XII Release 0.1.0
Loading...
Searching...
No Matches
xiiModelAnimationImport Struct Reference

Static Public Member Functions

static xiiResult ReadClipNames (xiiStringView sSourceFile, xiiDynamicArray< xiiString > &out_names, xiiStringBuilder *out_pError=nullptr)
 Discover all source clip labels without baking any clip. Failure clears out_names.
static xiiResult ReadFile (xiiStringView sSourceFile, const xiiModelAnimationImportOptions &options, xiiModelAnimationImport &out_import, xiiStringBuilder *out_pError=nullptr)

Public Attributes

xiiAnimationClipResourceDescriptor m_Clip
xiiDynamicArray< xiiString > m_AvailableClips

Member Function Documentation

◆ ReadFile()

xiiResult xiiModelAnimationImport::ReadFile ( xiiStringView sSourceFile,
const xiiModelAnimationImportOptions & options,
xiiModelAnimationImport & out_import,
xiiStringBuilder * out_pError = nullptr )
static

Read named joint transform animation through the existing Assimp dependency. Native linear keys retain source key times and trim boundaries. STEP boundaries use consecutive representable float times; cubic Hermite curves are baked at the selected sample rate and retain authored key times. Rotations are normalized. DEFAULT boundaries use rest transforms except glTF, which clamps as required by its format. CONSTANT boundaries clamp; per-channel LINEAR extrapolation and REPEAT fail explicitly. Joint names resolve against the runtime skeleton; source-local joint indices are not persisted. Failure clears the clip. Discovered clip labels remain available on selection/conversion failure. Morph/vertex animation, ambiguous joint or clip names, invalid TRS/keys and excessive output (over one million samples per track or sixteen million keys per clip) fail explicitly.


The documentation for this struct was generated from the following files:
  • /home/runner/work/XII/XII/Source/Tools/Libs/ModelImporter/AnimationImport.h
  • /home/runner/work/XII/XII/Source/Tools/Libs/ModelImporter/Implementation/AnimationImport.cpp