http://www.guerrilla-games.com/presentations/Siggraph2011_MichalValient_OcclusionInKillzone3.pdf
使用的是dice早先提的software rasterizer构建低精度depth buffer,然后根据这个来对bounding volume来做culling。
实现细节
- 使用640x360的buffer
- 数据的vectorize很重要
- 用汇编代码优化:使用汇编优化是一线工作室常用的做法
- depth buffer有压缩,最后encode到16bit
- occluder的资源,kz3使用physics mesh,当然会有问题,严重的情况在手动解决,大部分就是用physics mesh
- 按照一些标准来选取什么成为occluder,小的不行,被标记出来的不行,美术也会手动的来做occluder
- 一些主要的地方就是,occlusion系统就是程序本身是比较好的也比较快的,难点在于数据资源上的这里,自动化的系统一般是不够的,需要有content上的计划(制作和修复问题)
数据
原文链接: http://blog.csdn.net/ccanan/article/details/7087987