[2011][Engine][GPUGems]Chapter 6. Hardware Occlusion Queries Made Useful

http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter06.html

 

结合其他一些blog的阅读经验,一个感觉就是技术blog也应该像写代码--简洁优雅!

 

why?

之前听了umbra的presentation,关于occlusion culling,大卫顾同学推荐我看这个。

umbra link

(以下介绍都是umbra在presentation上的介绍,其核心竞争力也就是启发式算法(heuristic)他们并无介绍)

umbra使用bounding volume tree for camera culling(cpu side of course)。

gpu side有两个模式,一个是传统的读上一帧的bounding volume的occlusion query的结果,来做drawcall skip。

一个是利用heuristic做本帧直接的判断,这个是比较神奇的地方,umbra自己也没做到完全无错,在我看来做绝对准确的判断有点不可思议,但是在经历了几起让我吃惊的技术阅读之后,不下“不可能”这个判断了吧。

 

gpu gems2这个文章的核心我觉得就是hierarchy的应用。

 

至于具体的可以是kdtree,quadtree,octree。。。

在camera frustum culling无需说。

gpu occlusion query又用到coherence temperal的思想,如果一个tree的某一枝没有被看到,那么其子节点就也不判断了。

看到了就进一步向下traverse,其实和cpu端的frustum culling没什么不一样。

 

that's all.


原文链接: http://blog.csdn.net/ccanan/article/details/6557798

你可能感兴趣的:([2011][Engine][GPUGems]Chapter 6. Hardware Occlusion Queries Made Useful)