FFbxImporter

Main FBX Importer class.

Windows
MacOS
Linux

References

Module

UnrealEd

Header

/Engine/Source/Editor/UnrealEd/Public/FbxImporter.h

Include

#include "FbxImporter.h"

Syntax

class FFbxImporter

Remarks

Main FBX Importer class.

Variables

Name Description

Protected variable

bool

 

bCreateUnknownCameras

Protected variable

bool

 

bFirstMesh

Flag that the mesh is the first mesh to import in current FBX scene FBX scene may contain multiple meshes, importer can import them at one time.

Protected variable

FbxMap< FbxStri...

 

CollisionModels

Collision model list.

Protected variable

FFbxDataConvert...

 

Converter

Scene management

Protected variable

IMPORTPHASE

 

CurPhase

Protected variable

FString

 

ErrorMessage

Protected variable

EFbxCreator

 

FbxCreator

Value is true if the file was create by blender.

Protected variable

FString

 

FbxFileCreator

Protected variable

FString

 

FbxFileVersion

Protected variable

FbxAxisSystem

 

FileAxisSystem

Original File Info.

Protected variable

FString

 

FileBasePath

Base path of fbx file

Protected variable

FbxSystemUnit

 

FileUnitSystem

Protected variable

FbxGeometryConv...

 

GeometryConverter

Protected variable

FbxImporter ...

 

Importer

Public variable

FBXImportOption...

 

ImportOptions

Protected variable

EAppReturnType:...

 

LastMergeBonesChoice

Set when importing skeletal meshes if the merge bones step fails.

Public variable

FMD5Hash

 

Md5Hash

We cache the hash of the file when we open the file. This is to avoid calculating the hash many time when importing many asset in one fbx file.

Protected variable

TWeakObjectPtr<...

 

Parent

Public variable

FbxScene *

 

Scene

Current Fbx scene we are importing. Make sure to release it after import

Protected variable

FbxManager *...

 

SdkManager

Protected variable

TArray< FbxNode...

 

TransformSettingsToFbxApply

Make sure we are not applying two time the option transform to the same node

Constructors

Name Description

Protected function

FFbxImporter()

Destructors

Name Description

Public function

~FFbxImporter()

Functions

Name Description

Public function

void

 

AddStaticMeshSourceModelGeneratedLOD

(
    UStaticMesh* StaticMesh,
    int32 LODIndex
)

Add a GeneratedLOD to the staticmesh at the specified LOD index

Public function

void

 

AddTokenizedErrorMessage

(
    TSharedRef< FTokenizedMessage > Err...,
    FName FbxErrorName
)

Error message handler

Public function

void

 

ApplyTransformSettingsToFbxNode

(
    FbxNode* Node,
    UFbxAssetImportData* AssetData
)

Apply asset import settings for transform to an FBX node

Public function

void

 

BuildFbxMatrixForImportTransform

(
    FbxAMatrix& OutMatrix,
    UFbxAssetImportData* AssetData
)

Populate the given matrix with the correct information for the asset data, in a format that matches FBX internals or without conversion

Public function

void

 

BuildSkeletonSystem

(
    TArray< FbxCluster* >& Cluste...,
    TArray< FbxNode* >& OutSorted...
)

Fill FBX skeletons to OutSortedLinks

Protected function

bool

 

BuildStaticMeshFromGeometry

(
    FbxNode* Node,
    UStaticMesh* StaticMesh,
    TArray< FFbxMaterial >& MeshMateri...,
    int LODIndex,
    EVertexColorImportOption::Type Vert...,
    const TMap< FVector, FColor >& Exi...,
    const FColor& VertexOverrideColor
)

Set up the static mesh data from Fbx Mesh.

Protected function

void

 

CheckSmoothingInfo

(
    FbxMesh* FbxMesh
)

Protected function

void

 

CleanUp()

Clean up for destroy the Importer.

Protected function

void

 

CleanUpUnusedMaterials

(
    FSkeletalMeshImportData& ImportDat...
)

Make sure there is no unused material in the raw data.

Public function

void

 

ClearAllCaches()

Clear all data that need to be clear when we start importing a fbx file.

Public function

void

 

ClearTokenizedErrorMessages()

Protected function

FbxAMatrix

 

ComputeSkeletalMeshTotalMatrix

(
    FbxNode* Node,
    FbxNode* RootSkeletalNode
)

Compute the matrix for skeletal Fbx Node If we import don't import a scene it will call ComputeTotalMatrix with Node as the parameter.

Protected function

FbxAMatrix

 

ComputeTotalMatrix

(
    FbxNode* Node
)

Compute the global matrix for Fbx Node If we import scene it will return identity plus the pivot if we turn the bake pivot option

Protected function

void

 

ConsolidateMovementTrackInterpModes

(
    UInterpTrackMove* MovementTrac...
)

As movement tracks in Unreal cannot have differing interpolation modes for position & rotation, we consolidate the two modes here.

Public function

void

 

ConvertScene()

Convert the scene from the current options.

Protected function

bool

 

CreateAndLinkExpressionForMaterialProperty

(
    const FbxSurfaceMaterial& FbxMater...,
    UMaterial* UnrealMaterial,
    const char* MaterialProperty,
    FExpressionInput& MaterialInput,
    bool bSetupAsNormalMap,
    TArray< FString >& UVSet,
    const FVector2D& Location
)

Material

Public function Static

T *

 

CreateAsset

(
    FString ParentPackageName,
    FString ObjectName,
    bool bAllowReplace
)

Templated function to create an asset with given package and name

Public function Static

UObject *...

 

CreateAssetOfClass

(
    UClass* AssetClass,
    FString ParentPackageName,
    FString ObjectName,
    bool bAllowReplace
)

Create a new asset from the package and objectname and class

Protected function

ACameraActor...

 

CreateCamera

(
    FbxCamera* InCamera,
    UWorld* InWorld
)

Import Fbx Camera object

Protected function

ALight *

 

CreateLight

(
    FbxLight* InLight,
    UWorld* InWorld
)

Various actors, current the Fbx importer don't importe them

Protected function

UInterpGroup...

 

CreateMatineeGroup

(
    AMatineeActor* InMatineeActor,
    AActor* Actor,
    FString GroupName
)

Creates a Matinee group for a given actor within a given Matinee actor.

Protected function

UMaterialInt...

 

CreateUnrealMaterial

(
    const FbxSurfaceMaterial& FbxMater...,
    TArray< FString >& OutUVSets,
    bool bForSkeletalMesh
)

Create Unreal material from Fbx material.

Public function Static

void

 

DeleteInstance()

Protected function

int32

 

DoUnSmoothVerts

(
    FSkeletalMeshImportData& ImportDat...,
    bool bDuplicateUnSmoothWedges
)

Make un-smooth faces work.

Protected function

bool

 

FacesAreSmoothlyConnected

(
    FSkeletalMeshImportData& ImportDat...,
    int32 Face1,
    int32 Face2
)

Check if two faces belongs to same smoothing group

Protected function

void

 

FillAndVerifyBoneNames

(
    USkeleton* Skeleton,
    TArray< FbxNode* >& SortedLin...,
    TArray< FName >& OutRawBoneNames,
    FString Filename
)

Fill up and verify bone names for animation

Protected function

bool

 

FillAnimSequenceByKey

(
    FbxNode* Node,
    UAnimSequence* AnimSequence,
    const char* TakeName,
    FbxTime& Start,
    FbxTime& End,
    bool bIsRoot,
    FbxVector4 Scale
)

Anims

Public function

bool

 

FillCollisionModelList

(
    FbxNode* Node
)

If the node model is a collision model, then fill it into collision model list

Public function

void

 

FillFbxCollisionMeshArray

(
    FbxNode* Node
)

Fill the collision models array by going through all mesh node recursively

Public function

void

 

FillFbxMeshAndLODGroupArray

(
    FbxNode* Node,
    TArray< FbxNode* >& outLODGro...,
    TArray< FbxNode* >& outMeshAr...
)

Get all Fbx mesh objects not under a LOD group and all LOD group node

Public function

void

 

FillFbxMeshArray

(
    FbxNode* Node,
    TArray< FbxNode* >& outMeshAr...,
    UnFbx::FFbxImporter* FFbxImpor...
)

Get all Fbx mesh objects

Public function

void

 

FillFbxSkelMeshArrayInScene

(
    FbxNode* Node,
    TArray< TArray< FbxNode* >...,
    bool ExpandLOD,
    bool bCombineSkeletalMesh,
    bool bForceFindRigid
)

Get all Fbx skeletal mesh objects in the scene. these meshes are grouped by skeleton they bind to

Protected function

bool

 

FillLightComponent

(
    FbxLight* Light,
    ULightComponent* UnrealLight
)

Import Light detail info

Public function

bool

 

FillSkeletalMeshImportData

(
    TArray< FbxNode* >& NodeArray,
    UFbxSkeletalMeshImportData* Te...,
    TArray< FbxShape* >* FbxS...,
    FSkeletalMeshImportData* OutDa...,
    TArray< FbxNode* >& OutImport...,
    TArray< FName >& LastImportedMater...,
    const bool bIsReimport,
    const TMap< FVector, FColor >& Exi...
)

Fill FSkeletalMeshIMportData from Fbx Nodes and FbxShape Array if exists.

Protected function

bool

 

FillSkeletalMeshImportPoints

(
    FSkeletalMeshImportData* OutDa...,
    FbxNode* RootNode,
    FbxNode* Node,
    FbxShape* FbxShape
)

Fill the Points in FSkeletalMeshIMportData from a Fbx Node and a FbxShape if it exists.

Protected function

bool

 

FillSkelMeshImporterFromFbx

(
    FSkeletalMeshImportData& ImportDat...,
    FbxMesh*& Mesh,
    FbxSkin* Skin,
    FbxShape* Shape,
    TArray< FbxNode* >& SortedLin...,
    const TArray< FbxSurfaceMaterial&#...,
    FbxNode* RootNode,
    const TMap< FVector, FColor >& Exi...
)

Meshes

Public function

void

 

FindAllLODGroupNode

(
    TArray< FbxNode* >& OutNodeIn...,
    FbxNode* NodeLodGroup,
    int32 LodIndex
)

Find the all the node containing a mesh attribute for the specified LOD index.

Protected function

UMaterialInt...

 

FindExistingMaterialFromFbxMaterial

(
    const FbxSurfaceMaterial& FbxMater...,
    EMaterialSearchLocation MaterialSea...
)

Tries to find an existing UnrealMaterial from the FbxMaterial, returns nullptr if could not find a material.

Public function

FbxNode *...

 

FindFBXMeshesByBone

(
    const FName& RootBoneName,
    bool bExpandLOD,
    TArray< FbxNode* >& OutFBXMes...
)

Find FBX meshes that match Unreal skeletal mesh according to the bone of mesh

Public function

FbxNode *...

 

FindLODGroupNode

(
    FbxNode* NodeLodGroup,
    int32 LodIndex,
    FbxNode* NodeToFind
)

Find the first node containing a mesh attribute for the specified LOD index.

Protected function

void

 

FindOrImportMaterialsFromNode

(
    FbxNode* FbxNode,
    TArray< UMaterialInterface* > ...,
    TArray< FString >& UVSets,
    bool bForSkeletalMesh
)

Create materials from Fbx node.

Protected function

void

 

FixupMaterial

(
    const FbxSurfaceMaterial& FbxMater...,
    UMaterial* unMaterial
)

Add a basic white diffuse color if no expression is linked to diffuse input.

Public function

void

 

FlushToTokenizedErrorMessage

(
    enum EMessageSeverity::Type Severit...
)

Protected function

bool

 

GatherPointsForMorphTarget

(
    FSkeletalMeshImportData* OutDa...,
    TArray< FbxNode* >& NodeArray,
    TArray< FbxShape* >* FbxS...,
    TSet< uint32 >& ModifiedPoints
)

Fill the Points in FSkeletalMeshIMportData from Fbx Nodes and FbxShape Array if it exists.

Public function

void

 

GetAnimationIntervalMultiLayer

(
    FbxNode* RootNode,
    FbxAnimStack* AnimStack,
    FbxTimeSpan& AnimTimeSpan
)

When we get exported time we call GetanimationInterval from fbx sdk and it return the layer 0 by default This function return the sum of all layer instead of just the layer 0.

Public function

FbxTimeSpan

 

GetAnimationTimeSpan

(
    FbxNode* RootNode,
    FbxAnimStack* AnimStack
)

Get Animation Time Span - duration of the animation

Public function Const

const TCHAR ...

 

GetErrorMessage()

Retrieve the FBX loader's error message explaining its failure to read a given FBX file.

Public function

FString

 

GetFbxFileVersion()

Public function

int32

 

GetFbxMeshCount

(
    FbxNode* Node,
    bool bCountLODs,
    int32& OutNumLODGroups
)

Get mesh count (including static mesh and skeletal mesh, except collision models) and find collision models

Public function

FString

 

GetFileAxisDirection()

Public function

FString

 

GetFileCreator()

Public function

FString

 

GetFileUnitSystem()

Public function

FbxGeometryC...

 

GetGeometryConverter()

Public function

int32

 

GetGlobalAnimStackSampleRate

(
    FbxAnimStack* CurAnimStack
)

Calculate the global Sample Rate for all the nodes in the FbxAnimStack pass in parameter

Public function Const

FBXImportOpt...

 

GetImportOptions()

Get the object of import options

Public function

int32

 

GetImportType

(
    const FString& InFilename
)

Detect if the FBX file has skeletal mesh model.

Public function Static

FFbxImporter...

 

GetInstance()

Returns the importer singleton. It will be created on the first request.

Protected function Const

FString

 

GetMaterialBasePackageName

(
    const FString& MaterialFullName
)

Protected function Const

FString

 

GetMaterialFullName

(
    const FbxSurfaceMaterial& FbxMater...
)

Make material Unreal asset name from the Fbx material

Public function

int32

 

GetMaxSampleRate

(
    TArray< FbxNode* >& SortedLin...,
    TArray< FbxNode* >& NodeArray
)

Calculate Max Sample Rate - separate out of the original ImportAnimations

Public function

FbxNode *...

 

GetMeshNodesFromName

(
    const FString& ReimportMeshName,
    TArray< FbxNode* >& FbxMeshAr...
)

Return the node that match the mesh name. Return nullptr in case there is no match

Public function

float

 

GetOriginalFbxFramerate()

Public function

FbxNode *...

 

GetRootSkeleton

(
    FbxNode* Link
)

Get Unreal skeleton root from the FBX skeleton node. Mesh and dummy can be used as skeleton.

Public function

bool

 

GetSceneInfo

(
    FString Filename,
    FbxSceneInfo& SceneInfo,
    bool bPreventMaterialNameClash
)

Get detail infomation in the Fbx scene

Protected function

EInterpCurve...

 

GetUnrealInterpMode

(
    FbxAnimCurveKey FbxKey
)

Get Unreal Interpolation mode from FBX interpolation mode

Public function Const

bool

 

HasUnknownCameras

(
    AMatineeActor* InMatineeActor
)

For matinee export Retrieves whether there are any unknown camera instances within the FBX document.

Protected function

void

 

ImportAnimatedProperty

(
    float* Value,
    const TCHAR* ValueName,
    UInterpGroupInst* MatineeGroup,
    const float FbxValue,
    FbxProperty Property,
    bool bImportFOV,
    FbxCamera* Camera
)

Imports a FBX animated value into a property track of a Matinee group.

Public function

bool

 

ImportAnimation

(
    USkeleton* Skeleton,
    UAnimSequence* DestSeq,
    const FString& FileName,
    TArray< FbxNode* >& SortedLin...,
    TArray< FbxNode* >& NodeArray,
    FbxAnimStack* CurAnimStack,
    const int32 ResampleRate,
    const FbxTimeSpan AnimTimeSpan
)

Import one animation from CurAnimStack

Public function

UAnimSequenc...

 

ImportAnimations

(
    USkeleton* Skeleton,
    UObject* Outer,
    TArray< FbxNode* >& SortedLin...,
    const FString& Name,
    UFbxAnimSequenceImportData* Te...,
    TArray< FbxNode* >& NodeArray
)

Add to the animation set, the animations contained within the FBX scene, for the given skeletal mesh

Protected function

bool

 

ImportBone

(
    TArray< FbxNode* >& NodeArray,
    FSkeletalMeshImportData& ImportDat...,
    UFbxSkeletalMeshImportData* Te...,
    TArray< FbxNode* >& OutSorted...,
    bool& bOutDiffPose,
    bool bDisableMissingBindPoseWarning,
    bool& bUseTime0AsRefPose,
    FbxNode* SkeletalMeshNode,
    bool bIsReimport
)

Import bones from skeletons that NodeArray bind to.

Protected function

void

 

ImportCamera

(
    ACameraActor* Actor,
    UInterpGroupInst* MatineeGroup,
    FbxCamera* Camera
)

Imports a FBX camera into properties tracks of a Matinee group for a camera actor.

Public function

bool

 

ImportCollisionModels

(
    UStaticMesh* StaticMesh,
    const FbxString& NodeName
)

Import collision models for one static mesh if it has collision models

Public function Static

bool

 

ImportCurve

(
    const FbxAnimCurve* FbxCurve,
    FRichCurve& RichCurve,
    const FbxTimeSpan& AnimTimeSpan,
    const float ValueScale,
    const bool bAutoSetTangents
)

Import FbxCurve to Curve

Public function

void

 

ImportFbxMorphTarget

(
    TArray< FbxNode* >& SkelMeshN...,
    USkeletalMesh* BaseSkelMesh,
    int32 LODIndex,
    FSkeletalMeshImportData& BaseSkele...
)

Import Fbx Morph object for the Skeletal Mesh. In Fbx, morph object is a property of the Fbx Node.

Public function

bool

 

ImportFile

(
    FString Filename,
    bool bPreventMaterialNameClash
)

Import Fbx file.

Public function

bool

 

ImportFromFile

(
    const FString& Filename,
    const FString& Type,
    bool bPreventMaterialNameClash
)

Attempt to load an FBX scene from a given filename.

Protected function

float

 

ImportMatineeActor

(
    FbxNode* FbxNode,
    UInterpGroupInst* MatineeGroup
)

Imports a FBX scene node into a Matinee actor group.

Protected function

void

 

ImportMatineeAnimated

(
    FbxAnimCurve* FbxCurve,
    FInterpCurveVector& Curve,
    int32 CurveIndex,
    bool bNegative,
    FbxAnimCurve* RealCurve,
    float DefaultVal
)

Imports a FBX animated element into a Matinee track.

Public function

bool

 

ImportMatineeSequence

(
    AMatineeActor* InMatineeActor
)

Modifies the Matinee actor with the animations found in the FBX document.

Protected function

void

 

ImportMoveSubTrack

(
    FbxAnimCurve* FbxCurve,
    int32 FbxDimension,
    UInterpTrackMoveAxis* SubTrack,
    int32 CurveIndex,
    bool bNegative,
    FbxAnimCurve* RealCurve,
    float DefaultVal
)

Imports an FBX transform curve into a movement subtrack

Protected function

void

 

ImportNodeCustomProperties

(
    UObject* Object,
    FbxNode* Node,
    bool bPrefixTagWithNodeName
)

Import the user-defined properties on the node as FBX metadata on the object

Public function

USkeletalMes...

 

ImportSkeletalMesh

(
    FImportSkeletalMeshArgs& ImportSke...
)

Public function

bool

 

ImportSkeletalMeshLOD

(
    USkeletalMesh* InSkeletalMesh,
    USkeletalMesh* BaseSkeletalMes...,
    int32 DesiredLOD,
    UFbxSkeletalMeshImportData* Te...
)

Import LOD object for skeletal mesh

Public function

UStaticMesh ...

 

ImportStaticMesh

(
    UObject* InParent,
    FbxNode* Node,
    const FName& Name,
    EObjectFlags Flags,
    UFbxStaticMeshImportData* Impo...,
    UStaticMesh* InStaticMesh,
    int LODIndex,
    void* ExistMeshDataPtr
)

Creates a static mesh with the given name and flags, imported from within the FBX scene.

Public function

UStaticMesh ...

 

ImportStaticMeshAsSingle

(
    UObject* InParent,
    TArray< FbxNode* >& MeshNodeA...,
    const FName InName,
    EObjectFlags Flags,
    UFbxStaticMeshImportData* Temp...,
    UStaticMesh* InStaticMesh,
    int LODIndex,
    void* ExistMeshDataPtr
)

Creates a static mesh from all the meshes in FBX scene with the given name and flags.

Public function

void

 

ImportStaticMeshGlobalSockets

(
    UStaticMesh* StaticMesh
)

Public function

void

 

ImportStaticMeshLocalSockets

(
    UStaticMesh* StaticMesh,
    TArray< FbxNode* >& MeshNodeA...
)

Protected function

UTexture ...

 

ImportTexture

(
    FbxFileTexture* FbxTexture,
    bool bSetupAsNormalMap
)

Generate Unreal texture object from FBX texture.

Protected function

void

 

ImportTexturesFromNode

(
    FbxNode* Node
)

Visit all materials of one node, import textures from materials.

Protected function

bool

 

IsNodeAnimated

(
    FbxNode* FbxNode,
    FbxAnimLayer* AnimLayer
)

Check if FBX node has transform animation (translation and rotation, not check scale animation)

Protected function

bool

 

IsOddNegativeScale

(
    FbxAMatrix& TotalMatrix
)

Check if there are negative scale in the transform matrix and its number is odd.

Protected function

bool

 

IsValidAnimationData

(
    TArray< FbxNode* >& SortedLin...,
    TArray< FbxNode* >& NodeArray,
    int32& ValidTakeCount
)

Is valid animation data

Protected function

bool

 

LinkMaterialProperty

(
    const FbxSurfaceMaterial& FbxMater...,
    UMaterialInstanceConstant* Unr...,
    const char* MaterialProperty,
    FName ParameterValue,
    bool bSetupAsNormalMap
)

Create and link texture to the right material parameter value

Protected function

void

 

LoadNodeKeyframeAnimation

(
    FbxNode* NodeToQuery,
    FFbxCurvesAPI& CurvesAPI
)

Protected function

void

 

LoadNodeKeyframeAnimationRecursively

(
    FFbxCurvesAPI& CurvesAPI,
    FbxNode* NodeToQuery
)

Public function Const

ANSICHAR ...

 

MakeName

(
    const ANSICHAR* name
)

Help

Public function

FName

 

MakeNameForMesh

(
    FString InName,
    FbxObject* FbxObject
)

Public function Const

FString

 

MakeString

(
    const ANSICHAR* Name
)

Public function

void

 

MergeAllLayerAnimation

(
    FbxAnimStack* AnimStack,
    int32 ResampleRate
)

Merge all layers of one AnimStack to one layer.

Public function

bool

 

OpenFile

(
    FString Filename
)

Initialize Fbx file for import.

Public function

void

 

PartialCleanUp()

Cleanup the fbx file data so we can read again another file

Public function

void

 

PopulateAnimatedCurveData

(
    FFbxCurvesAPI& CurvesAPI
)

For sequencer import

Public function

void

 

PostImportStaticMesh

(
    UStaticMesh* StaticMesh,
    TArray< FbxNode* >& MeshNodeA...,
    int32 LODIndex
)

Finish the import of the staticmesh after all LOD have been process (cannot be call before all LOD are imported).

Public function Static

void

 

PrepareAndShowMaterialConflictDialog

(
    const TArray< TMaterialType >& Cur...,
    TArray< TMaterialType >& ResultMat...,
    TArray< int32 >& RemapMaterial,
    TArray< FName >& RemapMaterialName,
    bool bCanShowDialog,
    bool bIsPreviewDialog,
    bool bForceResetOnConflict,
    EFBXReimportDialogReturnOption& Ou...
)

Public function

bool

 

ReadHeaderFromFile

(
    const FString& Filename,
    bool bPreventMaterialNameClash
)

Make sure the file header is read

Public function

void

 

RecursiveBuildSkeleton

(
    FbxNode* Link,
    TArray< FbxNode* >& OutSorted...
)

Fill FBX skeletons to OutSortedLinks recursively

Public function

FbxNode *...

 

RecursiveFindParentLodGroup

(
    FbxNode* ParentNode
)

Find the first parent node containing a eLODGroup attribute.

Public function

UStaticMesh ...

 

ReimportSceneStaticMesh

(
    uint64 FbxNodeUniqueId,
    uint64 FbxMeshUniqueId,
    UStaticMesh* Mesh,
    UFbxStaticMeshImportData* Temp...
)

Re-import Unreal static mesh from updated scene Fbx file if the Fbx mesh is in LODGroup, the LOD of mesh will be updated

Public function

USkeletalMes...

 

ReimportSkeletalMesh

(
    USkeletalMesh* Mesh,
    UFbxSkeletalMeshImportData* Te...,
    uint64 SkeletalMeshFbxUID,
    TArray< FbxNode* >* OutSk...
)

Re-import Unreal skeletal mesh from updated Fbx file If the Fbx mesh is in LODGroup, the LOD of mesh will be updated.

Public function

UStaticMesh ...

 

ReimportStaticMesh

(
    UStaticMesh* Mesh,
    UFbxStaticMeshImportData* Temp...
)

Re-import Unreal static mesh from updated Fbx file if the Fbx mesh is in LODGroup, the LOD of mesh will be updated

Public function

void

 

ReleaseScene()

Empties the FBX scene, releasing its memory.

Public function

void

 

RemoveTransformSettingsFromFbxNode

(
    FbxNode* Node,
    UFbxAssetImportData* AssetData
)

Remove asset import settings for transform to an FBX node

Protected function

bool

 

ReplaceSkeletalMeshGeometryImportData

(
    const USkeletalMesh* SkeletalM...,
    FSkeletalMeshImportData* Impor...,
    int32 LodIndex
)

Protected function

bool

 

ReplaceSkeletalMeshSkinningImportData

(
    const USkeletalMesh* SkeletalM...,
    FSkeletalMeshImportData* Impor...,
    int32 LodIndex
)

Public function

FbxNode *...

 

RetrieveObjectFromName

(
    const TCHAR* ObjectName,
    FbxNode* Root
)

Retrieve the object inside the FBX scene from the name

Protected function Const

bool

 

RetrievePoseFromBindPose

(
    const TArray< FbxNode* >& Nod...,
    FbxArray< FbxPose* >& PoseArr...
)

Retrieve pose array from bind pose

Protected function

void

 

SetMaterialOrderByName

(
    FSkeletalMeshImportData& ImportDat...,
    TArray< FName > LastImportedMateria...
)

Protected function

void

 

SetMaterialSkinXXOrder

(
    FSkeletalMeshImportData& ImportDat...
)

Get material mapping array according "Skinxx" flag in material name

Public function

void

 

SetProcessUnknownCameras

(
    bool bCreateMissingCameras
)

Sets the camera creation flag.

Public function

void

 

SetupAnimationDataFromMesh

(
    USkeletalMesh* SkeletalMesh,
    UObject* InParent,
    TArray< FbxNode* >& NodeArray,
    UFbxAnimSequenceImportData* Im...,
    const FString& Filename
)

Import and set up animation related data from mesh

Protected function

void

 

SetupTransformForNode

(
    FbxNode* Node
)

Public function Static

void

 

ShowFbxMaterialConflictWindow

(
    const TArray< TMaterialType >& InS...,
    const TArray< TMaterialType >& InR...,
    TArray< int32 >& RemapMaterials,
    TArray< bool >& FuzzyRemapMaterial...,
    EFBXReimportDialogReturnOption& Ou...,
    bool bIsPreviewConflict
)

This function show a dialog to let the user resolve the material conflict that arise when re-importing a mesh

Public function Static

void

 

ShowFbxSkeletonConflictWindow

(
    USkeletalMesh* SkeletalMesh,
    USkeleton* Skeleton,
    ImportCompareHelper::FSkeletonCompa...
)

This function show a dialog to let the user know what will be change in the skeleton if the fbx is imported

Protected function

void

 

SkinControlPointsToPose

(
    FSkeletalMeshImportData& ImportDat...,
    FbxMesh* Mesh,
    FbxShape* Shape,
    bool bUseT0
)

Skins the control points of the given mesh or shape using either the default pose for skinning or the first frame of the default animation.

Protected function

void

 

TraverseHierarchyNodeRecursively

(
    FbxSceneInfo& SceneInfo,
    FbxNode* ParentNode,
    FbxNodeInfo& ParentInfo
)

Fill the FbxNodeInfo structure recursively to reflect the FbxNode hierarchy.

Public function Static

void

 

UpdateSkeletalMeshImportData

(
    USkeletalMesh* SkeletalMesh,
    UFbxSkeletalMeshImportData* Sk...,
    int32 SpecificLod,
    TArray< FName >* ImportMateria...,
    TArray< FImportMeshLodSectionsData ...
)

Public function Static

void

 

UpdateStaticMeshImportData

(
    UStaticMesh* StaticMesh,
    UFbxStaticMeshImportData* Stat...
)

Public function

bool

 

ValidateAnimStack

(
    TArray< FbxNode* >& SortedLin...,
    TArray< FbxNode* >& NodeArray,
    FbxAnimStack* CurAnimStack,
    int32 ResampleRate,
    bool bImportMorph,
    FbxTimeSpan& AnimTimeSpan
)

Validate Anim Stack - multiple check for validating animstack

Classes

Name

Description

Public struct

FFbxMaterial

Public class

FImportSkeletalMeshArgs

Creates a skeletal mesh from Fbx Nodes with the given name and flags, imported from within the FBX scene.

Enums

Name

Description

Protected enum

IMPORTPHASE

Constants

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss