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

Copyright (c) Theophilus Eriata. All Rights Reserved. More...

#include <ExposedBone.h>

Static Public Member Functions

static xiiResult ComputeParentTransforms (xiiArrayPtr< const xiiExposedBone > bones, xiiDynamicArray< xiiMat4 > &out_parentTransforms)

Public Attributes

xiiString m_sName
xiiString m_sParent
xiiTransform m_Transform = xiiTransform::MakeIdentity()

Detailed Description

Copyright (c) Theophilus Eriata. All Rights Reserved.

Tooling value used by asset metadata and bone property editors. Does not own a runtime skeleton or pose. The reflected name, version, properties, and binary field order preserve existing asset metadata.

Member Function Documentation

◆ ComputeParentTransforms()

xiiResult xiiExposedBone::ComputeParentTransforms ( xiiArrayPtr< const xiiExposedBone > bones,
xiiDynamicArray< xiiMat4 > & out_parentTransforms )
static

Computes each bone's parent-to-model matrix in input order, allowing unsorted and disconnected hierarchies. Empty parent names denote roots. Empty/duplicate names, missing parents, cycles, and non-finite transforms fail and clear out_parentTransforms. Uses O(n) expected time and O(n) scratch memory without recursion. Any asset import/root transform is applied by the consumer, outside these local bone transforms.


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