阴影体技术介绍图形相关2008-08-2622:29:14阅读48评论0字号:大中小转自http://blog
donews
com/yyh/archive/2005/05/19/387143
aspx前言:真实的游戏效果shadowvolume这个术语几乎是随着DOOM3的发布而成为FPS玩家和图形学爱好者谈论的对象的
虽然这个游戏还没有上市,但是凭借JohnCarmack的传奇经历以及DOOM3发布的一些让人惊讶的预览图片,我们仍然有理由认为它将会是2004年最热门的FPS游戏之一
idsoftware向来都不吝惜为了达到最好的图像效果而使用最先进的渲染技术,这曾经使得玩家为了玩它开发的游戏而不得不掏光口袋里面的钱来升级电脑,不知道这次我们可以幸免吗
自DX9发布以来,大家的注意力似乎都被shader吸引住了,BBS里面谈论的话题也总是离不开shaderbasedrendering,前一段时间关于GPU内部精度的讨论大有遮天蔽日之感,但其实和闪闪发光的金属小球以及波光鳞鳞的水面比较,几个简简单单的影子常常能带给场景更多的真实感
也许这就是为什么DOOM3能够在多如牛毛的FPS游戏中脱颖而出的原因之一
阴影的实现方法有很多种,现在比较流行的主要是shadowmapping和shadowvolume
前者实现起来相对简单,可以发挥现在GPU可编程流水线的能力,但是由于先天不足,shadowmapping在处理动态光源/物体的时候开销过大,经常作为一种静态场景中的廉价替代物
而Shadowvolume的强项恰恰是shadowmapping的短处,像DOOM3这种大量运用动态光源,并且要对时刻都在运动中的物体投射阴影,shadowvolume是现阶段唯一的选择
Shadowmapping的原理:一个物体之所以会处在阴影当中,是由于在它和光源之间存在着遮蔽物,或者说遮蔽物离光源的