6#include <assimp/scene.h>
10#define GLM_ENABLE_EXPERIMENTAL
11#include <glm/gtx/quaternion.hpp>
35 Bone(
const std::string&
name,
int ID,
const aiNodeAnim* channel);
37 void update(
float animationTime);
51 float getScaleFactor(
float lastTimeStamp,
float nextTimeStamp,
float animationTime);
53 glm::mat4 interpolatePosition(
float animationTime);
55 glm::mat4 interpolateRotation(
float animationTime);
57 glm::mat4 interpolateScaling(
float animationTime);
59 std::vector<keyPosition> m_positions;
60 std::vector<keyRotation> m_rotations;
61 std::vector<keyScale> m_scales;
66 glm::mat4 m_localTransform;
int getScaleIndex(float animationTime)
Definition: bone.cpp:65
int getBoneID()
Definition: bone.hpp:41
std::string getBoneName() const
Definition: bone.hpp:40
glm::mat4 getLocalTransform()
Definition: bone.hpp:39
int getPositionIndex(float animationTime)
Definition: bone.cpp:47
int getRotationIndex(float animationTime)
Definition: bone.cpp:56
void update(float animationTime)
Definition: bone.cpp:40
GLuint const GLchar * name
Definition: glad.h:1846
float timeStamp
Definition: bone.hpp:17
glm::vec3 position
Definition: bone.hpp:16
float timeStamp
Definition: bone.hpp:23
glm::quat orientation
Definition: bone.hpp:22
glm::vec3 scale
Definition: bone.hpp:28
float timeStamp
Definition: bone.hpp:29