zoukankan      html  css  js  c++  java
  • 对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 );

    就能够了

  • 相关阅读:
    C#多线程之Parallel中 类似于for的continue,break的方法
    C#中静态类、静态方法和静态变量的简单说明
    C# 类属性封装、字段的详解
    BackgroundWorker 后台进程控制窗体label、richtextbook内容刷新
    asp.net 实现 tts
    System.Speech.Synthesis 添加暂停、继续功能
    微软TTS,Neospeech TTS 简单使用
    VS2015如何批量统改相同变量名
    VS2015时显示无法启动此程序 因为计算机中丢失ucrtbased.dll
    Windows环境下MinGW/gcc安装和环境配置
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4049238.html
Copyright © 2011-2022 走看看