forked from 0ad/0ad
cc2b6afdac
This was SVN commit r96.
45 lines
983 B
C++
Executable File
45 lines
983 B
C++
Executable File
/************************************************************
|
|
*
|
|
* File Name: Model.H
|
|
*
|
|
* Description: CModel is a specific instance of a model.
|
|
* It contains a pointer to CModelDef, and
|
|
* includes all instance information, such as
|
|
* current animation pose.
|
|
*
|
|
************************************************************/
|
|
|
|
#ifndef MODEL_H
|
|
#define MODEL_H
|
|
|
|
#include "Texture.h"
|
|
#include "ModelDef.h"
|
|
|
|
class CModel
|
|
{
|
|
public:
|
|
CModel();
|
|
~CModel();
|
|
|
|
bool InitModel(CModelDef *modeldef);
|
|
void Destroy();
|
|
|
|
void SetPose (const char *anim_name, float time);
|
|
void ClearPose ();
|
|
|
|
//access functions
|
|
public:
|
|
CModelDef *GetModelDef() { return m_pModelDef; }
|
|
CMatrix3D *GetBonePoses() { return m_pBonePoses; }
|
|
|
|
void SetTexture(const CTexture& tex) { m_Texture=tex; }
|
|
CTexture* GetTexture() { return &m_Texture; }
|
|
|
|
protected:
|
|
CTexture m_Texture;
|
|
CModelDef *m_pModelDef;
|
|
CMatrix3D *m_pBonePoses; //describes the current pose for each bone
|
|
};
|
|
|
|
#endif
|