#ifndef ANIMATION_UTIL_H #define ANIMATION_UTIL_H #include "engine/studio.h" /** * */ typedef float NS_Matrix3x4[3][4]; /** * */ struct NS_AnimationData { NS_Matrix3x4 mMatrix; float mTime; float mFrame; float mFrameRate; studiohdr_t* mModelHeader; int mSequence; int mGaitSequence; vec3_t mMins; vec3_t mMaxs; }; /** * Returns false if the animation data could not be retrieved for the specified entity. */ bool NS_GetEntityAnimationData(int inEntityIndex, NS_AnimationData& outAnimationData); /** * outBoneMatrix array should have as many elements as there are bones in the model (MAXSTUDIOBONES) */ void NS_GetBoneMatrices(const NS_AnimationData& inAnimationData, float time, NS_Matrix3x4 outBoneMatrix[]); #endif