纹理贴图讲义.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
漫反射和镜面凹凸纹理 Normal map的一个优点是它还可以用来计算凹凸上的镜面高光。这可以通过插值Blinn光照明模型中的半角矢量(而不是光线矢量)来实现。 环境图凹凸纹理贴图 Environment Map Bump Mapping 一个让光泽表面(shiny surface)产生凹凸效果的方法是采用环境图凹凸纹理贴图(EMBM)。其思想是对环境映照坐标(u, v)用凹凸纹理中的u、v微分进行扰动。这使得反射矢量摇摆,从而使得反射表面变形。 该算法的最原始版本由DirectX 6引入,只允许定义一个平面环境图,类似于立方体图中的一个面。在存取偏移凹凸图后,再施加一用户定义的2×2矩阵,使得在微分量加入之前进行旋转和比例变换。 示意图 优缺点 优点: 该方法只需要两个纹理,而与光源的数目无关。 当与平面反射相结合时,EMBM可以反射动态变化的场景。 缺点: 缺少包含整个世界场景的环境图 控制曲面上的效果较困难。 示例 环境的平面反射 加入环境图凹凸纹理 水面反射天空的效果采用环境图凹凸纹理技术 Normal mapping和cubic environment mapping相结合 位移贴图 DirectX 9还引入了位移贴图(Displacement mapping)。该方法最早由Cook提出,并在RenderMan中得到了商业应用。该技术改变的是几何,而不是一般凹凸纹理中改变的法向。 左图为多边形化后的球面(没有纹理); 由于凹凸纹理改变的是物体的法向,所以侧影轮廓线没有改变。 凹凸贴图 位移贴图 由于位移贴图需要沿法向移动顶点的位置,故它可以在CPU中完成。 由于高度细分的网格通过总线传输时耗费太大,因此位移映射的一个要点是减少总线的负担。在图形硬件中实现该功能可以解放CPU做类似的工作,并大大减少总线传输的数据量。 例 子 左图的高度场用来偏移右图网格的顶点。 Further Reading and Resources / Heckbert P. “Survey of Texture Mapping”, IEEE Computer Graphics and Applications, 1986, 6(11):56-67 /~ph/ McReynolds T, Blythe D, et al. Siggraph 99 Advanced Graphics Programming Techniques Using OpenGL Course Notes, 1999. /developers/code/sig99/index.html * Thank you! * 参考标架 球面图有一个生成纹理的参考标架。图像通过朝世界坐标系的f单位轴观看,u为图像的向上单位矢量,h为水平单位矢量。从而得到基矩阵: 为了存取球面图,首先用上述矩阵把法矢量n和视线矢量e从当前眼睛坐标系变换到球面图参考标架,得到n’和e’。存取球面图纹理的反射矢量为: 反射球把整个环境显示在球的正面,它把反射矢量映射到该球二维图像上的一点。 正问题:即给定反射矢量,计算二维图像坐标(u, v) 反问题:给定球面图上的一点,如何计算反射矢量?我们需要得到相应球面点的法向,然后计算反射矢量。 在球面图空间,球的法向n为反射矢量r和到眼睛矢量(0,0,1)的半角矢量,其值为这两个矢量的和(rx, ry, rz+1), 对其单位化得到: 如果球位于原点,且半径为1,则单位法向的坐标同时也是点h的位置。 我们不需要hz,因为(hx , hy)已经描述了点在球面图像上的位置,它们的值域为[-1,1]。把它们映射到[0,1]从而存取球面图,得到纹理坐标: 在实用中,上述方程可用纹理矩阵来计算。 讨 论 Sphere mapping在多个方面对Blinn和Newell的方法进行了改进。 Sphere mapping不存在纹理裂缝问题。只在球面图的边处存在奇异情况,但这种情况几乎不会发生,因为所有的有效纹理位置位于纹理园的内部。由于纹理坐标可以用纹理矩阵来计算,该技术可以在任何支持纹理映射的图形硬件上实现。 Sphere mapping的缺点。(1). 在球面图上两个点之间的移动不是线性的。越靠近球面图边界处,误差越严重。 (2). 球面图只对单个视域方向有效。即使视域方向发生改变,应用的还是相同的映射。 抛物面映射 (paraboloid mapping) Heidrich和Seidel于1999年提出用两个环境纹理来实现抛物面环境映射。其思想与Sphere mapping类似,但用的是两个抛物面。每个抛物面生成一与球面图类似的园形纹理,并覆盖一半球面环境。 反射矢量的延伸线交于物体的中心(两个抛物面的焦点

文档评论(0)

benzei244572 + 关注
实名认证
内容提供者

建筑工程师持证人

没啥好说的额

领域认证该用户于2024年10月16日上传了建筑工程师

1亿VIP精品文档

相关文档