首页| JavaScript| HTML/CSS| Matlab| PHP| Python| Java| C/C++/VC++| C#| ASP| 其他|
购买积分 购买会员 激活码充值

您现在的位置是:虫虫源码 > 其他 > hge 的Demo

hge 的Demo

  • 资源大小:1.23 MB
  • 上传时间:2021-06-30
  • 下载次数:0次
  • 浏览次数:0次
  • 资源积分:1积分
  • 标      签: DirectX c++ demo HGE

资 源 简 介

应用背景 为了不误导别人,这里有必要补充一下: HGE每次绘图都需要锁定一次缓冲区,只适合绘制大量相同的图片,如果是各种不同的图片,问题就出来了。如果绘制一百张图片就需要锁定和解锁各一百次。了 解D3DAPI编程的人明白这是个什么问题。所以现有的HGE绘图算法是完全不适合大型游戏的。 有些人看到HGE自带例子中绘制2000个sprite FPS达200-300以上就以为是正确的,不要忘记绘制的图片都是同一张图片。这个问题是网上一位朋友首先发现的。 这里给出解决方案: 首先删除HGE原有的渲染函数,一个都不要留。 然后制作出一个添加数据.. 关键技术 HGE的核心绘图算法真是问题多多 大家有没有发现HGE绘图的时候是很有问题的。 每画一张图片,就需要从系统内存复制一次数据,最关键的不是数据复制的问题,而是每一次都需要LOCK锁定一次顶点缓冲区进行数据更新。锁定的时候不使用 任何标记,那么就强制GPU和CPU同步,带来的是渲染延迟问题。 最要命的是每一帧都进行从系统内存——显卡内存的操作,如果是网络游戏,每一帧都画上千张以上的图片和阿尔法混合,结果会出现什么??本来顶点缓冲区里面 既然已经存在数据,那么在几帧之内,如果数据是不需要更新,就完全可以直接从顶点缓冲区里面读取数据进行绘图。那么这些是GPU的事情,而CPU只是做了 很短时间的操作

文 件 列 表

gdc第一次
Debug
Bacterium.cpp
Bacterium.h
bass.dll
cell.cpp
Cell.h
firstMain.cpp
gameInterfaceManager.cpp
gameInterfaceManager.h
gdc第一次.aps
gdc第一次.vcproj
gdc第一次.vcproj.YLMFWWW-G3M5332.Administrator.user
gdc第一次.vcxproj
gdc第一次.vcxproj.filters
gdc第一次.vcxproj.user
hge.dll
Manager.cpp
Manager.h
menu.wav
menuitem.cpp
menuitem.h
stdafx.h
Debug
bang.psi
bang2.psi
bass.dll
bg.png
bg1.png
BuildLog.htm
cell1.png
cell2.png
cursor.png
font1.fnt
font1.png
gdc第一次.exe
gdc第一次.exe.embed.manifest
gdc第一次.exe.embed.manifest.res
gdc第一次.ilk
gdc第一次.pdb
hge.dll
hge_tut03.log
hge_tut03.obj
J.W.L.ico
menu.wav
mt.dep
particles.png
trail.psi
trail1.psi
trail3.psi
vc90.idb
vc90.pdb
第一次.log
_UpgradeReport_Files
UpgradeReport.css
UpgradeReport.xslt
UpgradeReport_Minus.gif
UpgradeReport_Plus.gif
gdc第一次.sln
gdc第一次.suo
UpgradeLog.XML
VIP VIP
0.174531s