对HGE游戏引擎的一次封装

HGE游戏引擎是一个开源2D游戏引擎,基于directX。

它的渲染及逻辑是基于帧回调的框架模式,

其提供一些基本的图像操作和输入控制功能。

我在之前写一个2D游戏的时候对它整个框架进行了一次封装,很多地方写得比较恶心,请原谅我在变量上命名的不规范。

在此分享出来,主要可以参考一下大体框架吧。

HGE游戏引擎基于帧的回调让我很不爽,因为咱的游戏逻辑一般是连续的,跟具体帧无关,所以我把整个HGE跑在自己的一个线程之中。我的游戏逻辑部分通过发消息,通知界面更新 以及获取用户输入。

在HGE的主框架下分四个部分

1. 资源管理 2.消息管理 3.声音管理 4.UI管理

下面是GDE_UI_HGEFramework.h

比较核心的是资源管理类,下面给出

GDE_UI_ResourceManager.h

GDE_UI_ResourceManager.cpp

比较重要的是消息传递机制,我仿照了MFC的消息宏定义机制,下面给出消息模块的核心代码

最后是整个HGE引擎启动的方式

GDE_UI_HGE.h

游戏初始化的时候

//创建hge线程
hge_thread = CreateThread( NULL, 0,
HGEThreadProc, NULL, 0, NULL );

就可以了

你可能感兴趣的:(游戏引擎)