📄 colmesh.h
字号:
#ifndef H_COLLIDABLE_MESH
#define H_COLLIDABLE_MESH
#include <coldet.h>
#include <math3d.h>
#include "D3DFile.h"
class CCollidableMesh : public CD3DMesh
{
public:
CCollidableMesh( TCHAR* strName = _T("CD3DFile_Mesh") )
: CD3DMesh(strName),
m_ColModel(NULL),
m_Transform(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),
m_Speed(0,0,0),
m_Mass(1.0f)
{}
virtual ~CCollidableMesh() { delete m_ColModel; }
bool Collision(CCollidableMesh& other);
void React(CCollidableMesh& other);
HRESULT Advance(float dt);
HRESULT Create( LPDIRECT3DDEVICE8 pd3dDevice, TCHAR* strFilename );
HRESULT Render( LPDIRECT3DDEVICE8 pd3dDevice,
BOOL bDrawOpaqueSubsets = TRUE,
BOOL bDrawAlphaSubsets = TRUE );
void SetSpeed(const Vector3D& v) { m_Speed=v; }
const Vector3D& GetSpeed() { return m_Speed; }
void SetMass(float mass) { m_Mass=mass; }
void SetRotateSpeed(const Vector3D& v) { m_RotateSpeed=v; }
void SetPosition(const Vector3D& v);
void SetDirection(const Vector3D& v);
protected:
CollisionModel3D* m_ColModel;
Matrix3D m_Transform;
Vector3D m_Speed;
Vector3D m_RotateSpeed;
float m_Mass;
};
#endif // H_COLLIDABLE_MESH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -