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 );

 

就可以了

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐