zoukankan      html  css  js  c++  java
  • HGE——重新编写HGESprite接口和字体接口

      重新编写了HGESprite部分,不再使用HGESprite单元。

      另外编写了一个HGECanvas单元,当然不是那个火人论坛上面的那个HGE加强版的那个。

      参考ID3DSprite接口的做法,使用一个接口对象,就可以批量绘制所有的图元。

      不需要创建多个接口对象。同时添加了纹理列表来管理显卡内存里面的纹理指针。

      完全按照网络游戏的做法,加载完成硬盘自定义格式资源文件包后,产生所需要的显卡内存纹理对象,就可以释放系统内存,使系统内存占用相当

    低。

      开始绘图的时候就由显卡内存读取,由GPU来进行绘制。这样使CPU和系统内存资源极大地解放了。

      D3D编程最爽的地方是不需要经常从系统硬盘读取资源,提供的显卡内存管理极大地方便了绘图操作。

      这些简直是以前DDRAW模式所不能够比的。

          重新编写了字体绘制部分,不再采用效率低下和不支持中文的原HGEFont单元。

         采用D3D9.0C优化得比以前版本更理想的ID3DXFont进行绘制。

      在D3D9.0C之前的ID3DXFont接口是不能够使用的。更何况是D3D8.0版本的。

      但是D3D9.0C之后微软就已经优化到合乎要求了。尤其是不再需要为不支持中文而烦恼了,目前很多引擎对于中文的支持都是不理想的。

      只是我对于Delphi的那些字符类型操作真是感到莫大的厌恶。

      接下来应该是碰撞方面的优化了。

      搞好之后,可以修改游戏源代码的绘图部分、逻辑部分和数据库部分,还是改成SQL数据库好些,方便以后的扩展。

      Delphi 2010版本确实好用,说真的,真不敢想象在D7之下进行开发会是个什么样子。无法了解内存泄露,无法得到各种错误信息等等。

      所以说在D7之下进行开发还是需要比在2010版本之下开发的时间成本和精力开销,还是非常大的。

  • 相关阅读:
    GDUFE ACM-1020
    GDUFE ACM-1069(简单的巴什博弈)
    GDUFE ACM-1138
    GDUFE ACM-1009
    GDUFE ACM-1008
    GDUFE ACM-1005
    LCA 最近公共祖先
    51nod
    51nod
    51nod
  • 原文地址:https://www.cnblogs.com/GameDelphi/p/2382836.html
Copyright © 2011-2022 走看看