📄 m2anicontroller.h
字号:
//--------------------------------------------------
// Desc: M2 Animation Controller
// Date: 2007.4.30 /update
// Author: Artsylee
//
// From: WOW Model Viewer
// I just coding in my own ways!
//
//--------------------------------------------------
#ifndef _M2ANICONTROLLER_
#define _M2ANICONTROLLER_
struct ModelAnimation;
struct AnimInfo
{
AnimInfo()
{
m_bEnable = false;
}
unsigned int m_AnimID;
int m_Loops;
bool m_bEnable;
};
#define ANIGROUPNUM 4
#define CHANNELNUM 2
class M2AniController
{
public:
M2AniController(ModelAnimation *pAni);
~M2AniController();
void Clear();
bool IsPause(void);
bool IsChannelEnable(int channel);
void EnableChannel(int channel);
void DisableChannel(int channel);
void EnableGroup(int channel, int group);
void DisableGroup(int channel, int group);
int Update(int Deltatime);
void AddAni(unsigned int id, int loop);
void SetAni(int channel, int group, unsigned int id, int loop);
void Play();
void Stop(int channel);
void Pause(bool bForce = false);
void Next(int channel);
int GetAnim(int channel = 0);
int GetFrame(int channel = 0);
int GetFrameCount(int channel = 0);
void SetSpeed(float speed) { m_fSpeed = speed; }
float GetSpeed(void) { return m_fSpeed; }
private:
ModelAnimation* m_pAni;
AnimInfo m_AniGroup[CHANNELNUM][ANIGROUPNUM];
int m_Index[CHANNELNUM];
unsigned int m_Frame[CHANNELNUM];
bool m_bChannelEnable[CHANNELNUM];
float m_fSpeed;
bool m_bPause;
};
#endif // _M2ANICONTROLLER_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -