Radium Engine  1.5.20
Loading...
Searching...
No Matches
SkinningData.hpp
1#pragma once
2
3#include <Core/Animation/HandleWeight.hpp>
4#include <Core/Animation/Pose.hpp>
5#include <Core/Animation/Skeleton.hpp>
6#include <Core/Geometry/TriangleMesh.hpp>
7#include <Core/RaCore.hpp>
8
9namespace Ra {
10namespace Core {
11namespace Animation {
12
16 Geometry::TriangleMesh m_referenceMesh;
17
20
23
26
28 WeightMatrix m_weights;
29
31 Vector3Array m_CoR;
32
34 WeightMatrix m_weightSTBS;
35};
36
41
43 Vector3Array m_currentPosition;
44
46 Vector3Array m_currentNormal;
47
49 Vector3Array m_currentTangent;
50
52 Vector3Array m_currentBitangent;
53
56
59
62};
63
64} // namespace Animation
65} // namespace Core
66} // namespace Ra
hepler function to manage enum as underlying types in VariableSet
Definition Cage.cpp:3
bool m_doSkinning
Whether skinning must be processed for the current frame.
Vector3Array m_currentTangent
The current mesh vertex tangent vectors.
uint m_frameCounter
The number of the current frame.
Vector3Array m_currentBitangent
The current mesh vertex bitangent vectors.
Skeleton m_skeleton
The animation skeleton in the current pose.
Vector3Array m_currentNormal
The current mesh vertex normals.
Vector3Array m_currentPosition
The current mesh vertex position.
bool m_doReset
Whether the skin must be reset to its initial reference configuration.
Skinning data that get set at startup including the "reference state".
WeightMatrix m_weightSTBS
The optional matrix of weights for STBS skinning.
Transform m_meshTransformInverse
The inverse of the mesh's transform.
Vector3Array m_CoR
The optionnal centers of rotations for CoR skinning.
Skeleton m_skeleton
The animation skeleton saved in rest pose.
WeightMatrix m_weights
The matrix of skinning weights.
AlignedStdVector< Transform > m_bindMatrices
The per-bone bind matrices.
Geometry::TriangleMesh m_referenceMesh
The mesh in reference position.