Cached skinning matrix
Former-commit-id: c5aeb09778f5696906eb764f600c4a152ab7ba48
This commit is contained in:
@@ -21,18 +21,26 @@ class NAZARA_API NzJoint : public NzNode
|
||||
NzJoint(const NzJoint& joint);
|
||||
~NzJoint() = default;
|
||||
|
||||
NzMatrix4f GetInverseBindMatrix() const;
|
||||
void EnsureSkinningMatrixUpdate() const;
|
||||
|
||||
const NzMatrix4f& GetInverseBindMatrix() const;
|
||||
NzString GetName() const;
|
||||
NzSkeleton* GetSkeleton();
|
||||
const NzSkeleton* GetSkeleton() const;
|
||||
const NzMatrix4f& GetSkinningMatrix() const;
|
||||
|
||||
void SetInverseBindMatrix(const NzMatrix4f& matrix);
|
||||
void SetName(const NzString& name);
|
||||
|
||||
private:
|
||||
void InvalidateNode();
|
||||
void UpdateSkinningMatrix() const;
|
||||
|
||||
NzMatrix4f m_inverseBindMatrix;
|
||||
mutable NzMatrix4f m_skinningMatrix;
|
||||
NzString m_name;
|
||||
NzSkeleton* m_skeleton;
|
||||
mutable bool m_skinningMatrixUpdated;
|
||||
};
|
||||
|
||||
#endif // NAZARA_JOINT_HPP
|
||||
|
||||
Reference in New Issue
Block a user