- 1、本文档共1页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于GPU的网格模型平滑阴影的实时绘制
屠建军,王璐,屠长河,孟祥旭
(山东人学计算机科学与技术学院,济南250101)
作为视觉关注的重要因素,在三维虚拟场景的绘制中,阴影町增强场景的真实感。因此,阴影的绘制
一直是计算机图形学研究的主要内容之一。另一方面,网格经常用来近似三维物体的光滑表面,在计算机
游戏和动画等领域有着非常广泛的应用。由于网格模型是光滑曲面的近似,因此,直接绘制其阴影会使阴
影的边界不光滑,造成阴影边界的走样,而人眼对阴影边界的走样又非常敏感。因此,研究如何绘制网格
模型,使其具有光滑的阴影边界,是本文讨论的主要问题。
本文提出一种基于GPU的平滑阴影实时绘制的方法。通过重新定义阴影轮廓线,得到网格模型上精确
地阴影轮廓边界,利用阴影体算法,可以获得边界平滑的阴影区域。利用GPU对阴影轮廓线的生成及阴影
区域的渲染等过程进行了加速。本文的主要贡献有:(1)提出一种实时的平滑阴影轮廓线的算法,实现了
简化网格模型的阴影平滑效果。(2)利用GPU加速阴影生成算法,大大提高了渲染效率。设计算法利用
GPU几何着色器(Geometry
过低问题。
本文提出基于阴影三角形的阴影轮廓线平滑方法。为了定义阴影三角形,我们首先对网格模型上的顶
点进行分类。假设光线方向为L,对于一个法向为N的顶点,当Ⅳ·L≤0时,该顶点为阴影点,特别地,
当Ⅳ.L=0时,该顶点称为阴影边缘点。否则,我们称该顶点为非阴影点。对网格模型中的一个三角形,
如果其顶点有一个或者两个是阴影点,其他顶点为非阴影点,那么这个三角形为阴影三角形。针对模型中
的每个阴影三角形,其三个顶点分别为阴影点和非阴影点,说明阴影的边界通过该i角形,首先通过Hermite
插值构建阴影线桥,求出阴影三角形对应的两个阴影边缘点,然后根据这两个阴影边缘点再次利用Hermite
插值构建出阴影三角形对应的阴影线段。对所有阴影三角形进行相似的计算,就可以获得整体的阴影轮廓
线。利用阴影三角形得到的阴影轮廓线,在光源和视点变化时均可保证视觉的连贯性。
阴影体算法在GPU上的实现主要分为三部分。首先是绘制原始模型,绘制过程中对物体轮廓线进行平
滑处理,这一步在GPU的传统流水管线中实现。其次,构造阴影体。利用阴影三角形,经过两次Hermite
插值计算出的阴影片段构造阴影体。这部分主要在几何着色器(GS)中实现。最后,绘制阴影效果。根据深
度缓存和模板缓存的值绘制出模型的阴影区域。
我们在PC机上,基于HLSL语言和D3D10.0实现了本文算法。其程序运行环境是Windows7,计算机
DuoCPU
E6550@2.33GHz700MHz,2.0GB内存和ATIHD4850显卡。本文算法
配置为Intel(R)core(TM)2
多时,本文算法的效率相对于PN.Triangle方法就越高。
对于未来工作,我们将对自遮挡阴影效果做进一步的平滑处理,平衡CPU和GPU的任务分工,进一
步提高渲染效率。另外,将该算法向移动图形设备上移植,也可以作为本文工作在应用上的进一步扩展。
.123.
文档评论(0)