📄 game.h
字号:
#include "tools.h"
#include "StaticMesh.h"
//我们需要一条射线
struct Ray
{
D3DXVECTOR3 _origin; //射线起点
D3DXVECTOR3 _dirction; //射线方向
};
//绑定球
struct BoundSphere
{
D3DXVECTOR3 _center;
float radius;
};
class CGame
{
public:
LPDIRECT3D9 m_pD3D;//接口指针
LPDIRECT3DDEVICE9 m_pDevice;//设备指针
CStaticMesh * m_pStaticMesh;
BoundSphere m_boundSphere;//绑定球体
bool m_bIsRota;
float Angle;
CGame();//构造函数
~CGame();//析构函数
HRESULT SetEyes();
HRESULT InitD3D( HWND hWnd);//初始化设备
HRESULT InitGame();//初始化游戏
HRESULT SetFog();//设置雾化效果
HRESULT GameLogic(float);//游戏逻辑循环
HRESULT GameRender(float);//游戏渲染
HRESULT ClearUp();//清除资源
//消息传递
void HandleMessage(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
// 计算拾取射线
Ray CalculateRay(int x, int y);
// 转换射线
Ray TransformRay(Ray ray, D3DXMATRIX* T);
// 计算与球的相交
BOOL CheckIntersection(Ray* ray, BoundSphere* sphere);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -