http://software.intel.com/en-us/videos/occlusion-booster-gdc/
偶尔看见的一个中间件开发商,umbrasoftware,专门开发occlusion boost,做occlusion方向的优化,3平台支持。
提出号称很牛的occlusion解决方案,可以提高场景的效率%20--%100,估计是要针对occlusion不太好的场景,然后在数据creation方面可以帮助开发者省略掉portal,occlusion mesh这些东西的定制,提高了开发效率。
不知道他们怎么做的,但是从他们网站上弄了些比较有启发性的句子:
- OB needs to know the bounding volumes and transformation matrices of objects, and the viewing camera parameters.
- occlusion queries less than 1ms of GPU time.
- Performance is gained on both CPU and GPU when only visible objects are rendered.
- about 300bytes per object on memory usage
我乱猜想下可能的方法是:
- frustum的visibility test,
- object的occlusion query结果在下一帧使用,如果不可见就直接cancel掉drawcall(所以才会cpu,gpu都节省)
- object的occlusion query应该是用bounding volume(所以才会小于1ms的gpu time)
bioware在用,ccp的eveonline和age of connan在用。那估计应该是比我想的要强力得多。
http://software.intel.com/en-us/videos/havok-cloth-demo-at-gdc-2010/
介绍cloth和softbody,这个,嗯嗯,效果很好,很强力,更新可以在多线程做,效率也不错。
不过上面两个就是给下面这个做绿叶的,看看enlighten的这个,too sexy:
http://software.intel.com/en-us/videos/geomerics-enlighten-demo-at-gdc-2010/
可以做到针对静态场景动态光源做GI,动的物体可以受到间接光照,但是不能cast indirect lighting。
而且我个人更喜欢这个胜过crytek的light propagation volume,这个的效果真tmd赞。
上图的