Diligent Engine
Loading...
Searching...
No Matches
Diligent::RadientImport::ImportedAnimation Struct Reference

#include <RadientImportedDocument.hpp>

Public Attributes

RefCntAutoPtr< IRadientAnimationClipAsset > pClip
std::vector< ImportedAnimationSkinMapping > SkinMappings

Detailed Description

An animation clip and the mappings needed to bind it to scene instances.

The record retains the clip and owns its skin mappings. Instantiation with an animation registry creates bindings to the instantiated entities, morph weights, and skeleton poses; the clip itself is shared between instances.

Member Data Documentation

◆ pClip

RefCntAutoPtr<IRadientAnimationClipAsset> Diligent::RadientImport::ImportedAnimation::pClip

Strong reference to the imported clip. Null clips are skipped during instantiation. Target Object values follow these document conventions:

  • RadientNodeAnimationSchemaID and RadientMorphWeightsAnimationSchemaID use zero-based indices in ImportedDocument::Nodes.
  • RadientLightAnimationSchemaID uses ImportedNode::LightIndex identifiers.
  • RadientMaterialAnimationSchemaID and RadientSurfaceMaterialAnimationSchemaID use indices in ImportedDocument::Materials. SkinMappings additionally connects clip targets to skeleton joints. Target Object values are not runtime entity IDs. Automatic scene binding handles node transforms and visibility, light properties, morph weights, and material parameters. Material bindings are associated with the scene root and edit shared material assets; instances do not get private copies.

◆ SkinMappings

std::vector<ImportedAnimationSkinMapping> Diligent::RadientImport::ImportedAnimation::SkinMappings

Owned mappings for skins affected by pClip. Unaffected skins need no entry. A mapping only creates a binding when its skin is instantiated in the selected scene.