Radium Engine  1.5.0
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 
9 namespace Ra {
10 namespace Core {
11 namespace Animation {
12 
16  Geometry::TriangleMesh m_referenceMesh;
17 
20 
23 
25  AlignedStdVector<Transform> m_bindMatrices;
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 
61  bool m_doReset;
62 };
63 
64 } // namespace Animation
65 } // namespace Core
66 } // namespace Ra
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.