struct mrpt::viz::CAnimatedAssimpModel::Bone

Overview

struct Bone
{
    // fields

    std::string name;
    int parentIndex = -1;
    std::vector<int> children;
    mrpt::math::CMatrixDouble44 offsetMatrix;
    mrpt::math::CMatrixDouble44 localTransform;
    mrpt::math::CMatrixDouble44 globalTransform;
    mrpt::math::CMatrixDouble44 finalTransform;
    bool hasOverride = false;
    mrpt::math::CMatrixDouble44 overrideTransform;
};

Fields

int parentIndex = -1

-1 for root bones

std::vector<int> children

child bone indices for O(N) traversal

mrpt::math::CMatrixDouble44 offsetMatrix

mesh space -> bone space

mrpt::math::CMatrixDouble44 localTransform

relative to parent

mrpt::math::CMatrixDouble44 globalTransform

world space

mrpt::math::CMatrixDouble44 finalTransform

for skinning