⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 game.h

📁 DirectInput的基本实现 只是基本应用
💻 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 + -