FDatasmithFBXFileImporter

Imports an FBX file into the intermediate FBX scene representation

Windows
MacOS
Linux

References

Module

DatasmithFBXTranslator

Header

/Engine/Plugins/Enterprise/DatasmithFBXImporter/Source/DatasmithFBXTranslator/Public/DatasmithFBXFileImporter.h

Include

#include "DatasmithFBXFileImporter.h"

Syntax

class FDatasmithFBXFileImporter

Remarks

Imports an FBX file into the intermediate FBX scene representation

Variables

Name Description

Protected variable

const FDatasmit...

 

BaseOptions

Basic options like whether to import geometry or materials at all

Protected variable

bool

 

bDisplayedTwoKeysWarning

Protected variable

TMap< int32, TA...

 

ImportedAnimationCurves

Stored imported AnimCurves by DSID, which is a specific value inserted into animation curves emitted from VRED at time OutScene->TagTime.

Protected variable

TMap< FbxSurfac...

 

ImportedMaterials

Map of Fbx material objects to imported material structure

Protected variable

TMap< FbxMesh &...

 

ImportedMeshes

Map of FbxMesh objects to already imported FDatasmithFBXSceneMesh

Protected variable

FbxScene *

 

InScene

Fbx scene which we're importing

Protected variable

const UDatasmit...

 

Options

All options to configure importer

Protected variable

FDatasmithFBXSc...

 

OutScene

Local scene which we're importing onto

Constructors

Name Description

Public function

FDatasmithFBXFileImporter

(
    FbxScene* InFbxScene,
    FDatasmithFBXScene* InScene,
    const UDatasmithFBXImportOptions&#...,
    const FDatasmithImportBaseOptions&...
)

Functions

Name Description

Protected function

void

 

AddCurvesForProperty

(
    FbxProperty InProperty,
    FbxAnimLayer* InLayer,
    EDatasmithFBXSceneAnimationCurveTyp...,
    TArray< FDatasmithFBXSceneAnimCurve...
)

Tries to extract animation curves of InProperty, building a new FDatasmithFBXSceneAnimCurve of type InType for each channel, if it can

Protected function

void

 

ConvertCoordinateSystem()

Convert scene coordinate system

Protected function

void

 

CreateAnimationTimelines()

Create one timeline per animation layer contained in the animation

Protected function

FDatasmithFB...

 

CreateNewCurve

(
    FbxAnimCurve* InCurve,
    EDatasmithFBXSceneAnimationCurveTyp...,
    EDatasmithFBXSceneAnimationCurveCom...
)

Protected function Static

void

 

DoImportMesh

(
    FbxMesh* InMesh,
    FDatasmithFBXSceneMesh* Mesh
)

Convert Fbx mesh into FRawMesh

Protected function

void

 

ExtractAnimations

(
    FbxNode* Node
)

Extract all animation curves from the FBX and pack them into OutScene->AnimNodes.

Protected function

void

 

FillCurveFromClipsFile

(
    FbxAnimCurve* InCurve,
    EDatasmithFBXSceneAnimationCurveTyp...,
    EDatasmithFBXSceneAnimationCurveCom...
)

Tries to extract key frames from InCurve, building a new FDatasmithFBXSceneAnimCurve of type InType and component InComponent if it can.

Protected function Static

void

 

FindFbxUVChannels

(
    FbxMesh* Mesh,
    TArray< FFbxUVInfo >& FbxUVs
)

Protected function

TSharedPtr< ...

 

ImportMaterial

(
    FbxSurfaceMaterial* InMaterial
)

Import an Fbx material

Protected function

TSharedPtr< ...

 

ImportMesh

(
    FbxMesh* InMesh,
    FbxNode* InNode
)

Allocate FDatasmithFBXSceneMesh

Public function

void

 

ImportScene()

Protected function

bool

 

IsOddNegativeScale

(
    FbxAMatrix& TotalMatrix
)

Protected function

void

 

TraverseHierarchyNodeRecursively

(
    FbxNode* ParentNode,
    TSharedPtr< FDatasmithFBXSceneNode ...
)

Recursively import Fbx scene

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