Saturday, May 19, 2007

Tootle


Tootle是Triangle Order Optimization Tool,ATI出品;它能够"provide significant performance improvements in pixel limited situations, with no penalty in vertex-limited scenarios, and no runtime cost."。

其基本思想就是
1、 先将mesh分片,对各片进行view-independent排序,使得early z-culling能发挥更大的效力,减少overdraw,提高pixel一级的效率;
2、针对各片基于locality进行重新排列,从而减少miss vertex cache的发生,提高vertex一级的效率。

这其中涉及到三篇文章,第一篇是"Triangle Order Optimization for Graphics Hardware Computation Culling",第二篇是解决如何将mesh分片的,题为"Multi-chart Geometry Images",第三篇解决对各片进行重新排列的问题,来自于Hoppe的"Optimization of Mesh locality for transparent vertex caching"。

诱人之处在于:由于Nvidia和ATI在硬件设计上都有考虑early z-culling问题,因此用这个工具优化过的模型,适用于目前所有主流游戏平台。

Friday, May 18, 2007

CryEngine2特性剖析 — Motion Blur & Depth of Field


CryEngine2的官方特性官方文档中的描述如下:
Motion Blur is used to simulate the visual effect of using a slow shutter speed when tracking fast moving objects or making quick camera movements. Blur can be applied both to individual objects( object based motion blur ), and/or to an entire scene (screen based motion blur), while Depth of Field can be used to focus the viewer's eye on a nearby object while subtly blurring objects in front or behind the point of focus.

这两个技术,实在没有太多好说道的。

关于基于物体的motion blur,可以参考Wloka和Zeleznik的文章"Interactive real-time motion blur";关于全屏幕的motion blur,要简单得多,只要你能想办法加噪声即可。

关于depth of field,有两篇不错的文章:"Real-time Depth of Field Simulation"和"Advanced Depth of Field"。两篇都来自于ATI。

这两个技术很容易集成到引擎,但并不是很重要。