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

    就能够了

  • 相关阅读:
    RTSP协议转RTMP协议的行业视频接入网关EasyRTSPLive如何实现音频转码的
    RTSP协议转RTMP协议的行业视频接入网关EasyRTSPLive之跨平台ini配置及通道的方法
    GB/T28181协议EasyGBS播放1080p视频直播会花屏
    国标GB/T28181协议下播放器起播慢或者延迟高如何解决?
    EasyGBS查找大华设备的录像列表时失败
    ffmpeg增加h264编解码功能模块方法
    EasyNVR控制台运行出现invalid license关于计算机保护软件类似于360、腾讯云管家等限制相关问题
    摄像机经过多级路由转换无法被EasyNVR拉流问题处理方法
    使用EasyNVR软件对接海康摄像头对接失败问题解析
    GB/T28181协议使用EasyNVR降低播放延迟方法
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4049238.html
Copyright © 2020-2023  润新知