大道至简

来源:互联网 发布:有淘宝账号的可以贷款 编辑:程序博客网 时间:2024/05/16 23:01

图形引擎优化

1. 画更少的东西

  什么都不画,效率最高。只画正好需要画的,效率最佳。

  场景管理:四叉树、BSP、K-Tree。

  视锥剪裁

  背面剔除

 shader中的像素剪裁: 遮挡查询,剔除被遮挡像素等

  等等。

 优化的地方也就是讲需要绘制的选择的更精确。


2. 减少必须消耗部分的调用,尤其是每帧更新时

 d3d的一些API每次调用有不少的消耗,所以有了材质管理,进行材质排序,减少消耗。


3. 打包

 GPU和CPU通信的消耗较大,那么一次尽量传送更佳大小的数据,打包碎小的数据。 应用到网络传输等等都是相通的。


4. 特定情况下的优化

例如显卡的Early -Z、 Only z double depth buffer。

例如数据格式或算法导致的cache命中率下降


5. 减少重复计算

 频繁计算却没有改变的地方,使用cache


6.预计算‘

  都说以空间换时间,还可以以硬盘的空间换时间

例如:lightmap


6.profile


算法设计

大道至简~ 将复杂的问题细化,分而治之。


软件设计

个人经验有限,没办法统管全局,只能先模块化设计,然后模块通信,系统集成----自底而上的设计

0 0
原创粉丝点击