电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

阴影体技术介绍VIP免费

阴影体技术介绍_第1页
1/19
阴影体技术介绍_第2页
2/19
阴影体技术介绍_第3页
3/19
阴影体技术介绍图形相关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的原理:一个物体之所以会处在阴影当中,是由于在它和光源之间存在着遮蔽物,或者说遮蔽物离光源的距离比物体要近,这就是shadowmapping算法的基本原理。Pass1:以光源为视点,或者说在光源坐标系下面对整个场景进行渲染,目的是要得到一副所有物体相对于光源的depthmap(也就是我们所说的shadowmap),也就是这副图像中每个象素的值代表着场景里面离光源最近的fragment的深度值。由于这个pass中我们感兴趣的只是象素的深度值,所以可以把所有的光照计算关掉,打开z-test和z-write的renderstate。Pass2:将视点恢复到原来的正常位置,渲染整个场景,对每个象素计算它和光源的距离,然后将这个值和depthmap中相应的值比较,以确定这个象素点是否处在阴影当中。然后根据比较的结果,对shadowedfragment和lightedfragment分别进行不同的光照计算,这样就可以得到阴影的效果了。从上面的分析可以看出来,depthmap的渲染只和光源的位置以及场景中物体的位置有关,无论视点怎么运动,只要光源和物体的相互位置关系不变,shadowmap就可以被重复使用,因此对于没有动态光源的场景,shadowmapping是很明智的一种选择。除了上面提到的不能很好应付动态光源场景的限制之外,shadowmapping还存在着所有使用texture的场景面临的共同问题-锯齿。根据采样定理,只有纹理分辨率小于或者等于物体的实际分辨率时才不会失真,而当一副很大的纹理被贴到尺寸比它小的物体上时,会出现一个fragment覆盖多个texel的情况,这时要准确的再现这个fragment的颜色信息,就要综合考虑所有被它覆盖的texel产生的影响,这就是各种纹理滤波方法最基本的原理。但是由于depthmap是在不断的变化当中,所以不能像一般的纹理那样把各个mip-map事先计算好放到显存里面。有一种利用pixelshader的方法对depthmap做bilinearfiltering,但是开销很大,在现阶段不具备实用意义。同样的问题在纹理分辨率小于屏幕分辨率的时候仍然存在,这时多个fragment会被投射到同一个texel上面,虽然从再现纹理的角度来说并不存在失真,但是由于多个fragment共用同一个纹理值,锯齿问题还是存在。更糟糕的是,没有一种滤波技术可以从根本上解决这样的锯齿,因为从数学上讲,人们不可能通过运算来创造出比原始量更多的信息。近年来,为了解决shadowmapping的锯齿问题,人们做了很多努力,比较有前景的是adaptiveshadowmap(ASM)和perspectiveshadowmap(PSM)。两者的基本原理都是在可能产生锯齿的地方人为增加采样率,使得一个fragment至少对应一个texel,区别是ASM增加采样率的地方是在shadow边缘,而PSM是在靠近视点的地...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

阴影体技术介绍

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部