10#include <unordered_map>
13#include <glm/gtc/quaternion.hpp>
14#include <glm/mat4x4.hpp>
15#include <glm/vec3.hpp>
33 glm::quat
bindRot = glm::quat(1.0f, 0.0f, 0.0f, 0.0f);
44 const std::vector<Bone> &
GetBones()
const {
return m_bones; }
45 std::vector<Bone> &
GetBones() {
return m_bones; }
48 std::vector<Bone> m_bones;
49 std::unordered_map<std::string, size_t> m_nameToIndex;
Engine-wide primitive type aliases and GLM math imports.
i32 FindBoneIndex(const std::string &name) const
const std::vector< Bone > & GetBones() const
std::vector< Bone > & GetBones()
void AddBone(const Bone &bone)
int32_t i32
Signed 32-bit integer — used for GL enums and sizes.
size_t usize
Platform-native unsigned size type.
i32 parentIndex
Index into Skeleton::bones, or -1 for the root.
glm::mat4 localBind
Local bind transform (relative to parent).
glm::mat4 offsetMatrix
Inverse bind matrix in mesh space (Assimp aiBone::mOffsetMatrix).