📄 gameapp.h
字号:
#pragma once
#include "GameHeader.h"
//====================================================================
//程序框架
class CGameApp
{
public:
enum GAMESTATE { GAMEMENU, GAMEPLAY }; //游戏状态
CGameApp( HINSTANCE hInstance, //实例句柄
std::string winCaption, //窗口标题
D3DDEVTYPE devType, //D3D设备类型
DWORD vertexProcessType); //顶点处理模式
virtual ~CGameApp();
void Run(); //程序入口函数
LRESULT MsgProc
(UINT msg, WPARAM wParam, LPARAM lParam); //窗口过程函数
HINSTANCE GetAppInst(); //获取实例句柄
HWND GetMainWnd(); //获取窗口句柄
public:
//框架函数 根据需要重写
virtual int InitScene() { return 0;} //初始化场景
virtual void UpdateScene() {} //更新场景
virtual void RenderScene() {} //渲染场景
virtual void InitMenu() {} //初始化菜单
virtual void UpdateMenu() {} //更新菜单
virtual void RenderMenu() {} //渲染菜单
virtual void CleanUp() //释放资源
{
SafeRelease(g_pd3dObject);
SafeRelease(g_pd3dDevice);
}
protected:
void InitMainWindow(); //初始化窗口
void InitDirect3D(); //初始化Direct3D
void PlayGame(); //执行游戏
void BeginRender();
void EndRender();
protected:
std::string MainWndCaption; //窗口标题
D3DDEVTYPE DevType; //D3D设备类型
DWORD VertexProcessType; //顶点处理方式
GAMESTATE GameState; //游戏状态
HINSTANCE g_hAppInst; //实例句柄
HWND g_hMainWnd; //窗口句柄
LPDIRECT3D9 g_pd3dObject; // Direct3D对象
LPDIRECT3DDEVICE9 g_pd3dDevice; // Direct3D设备对象
DWORD g_dwScreenWidth; //屏幕宽度
DWORD g_dwScreenHeight; //屏幕高度
};
//====================================================================
//全局游戏
extern CGameApp *g_pGame;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -