- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
纹理表示
8.4 纹理表示
纹理
计算机图形学中的纹理为定义在二维空间中有限区域内的一组信息,可以用于描述,物体表面所呈现的凹凸不平的沟纹,也可以描述物体光滑表面上的彩色图案。利用纹理可以在不增加场景描述复杂度,不显著增加计算量的前提下,大幅度地提高图形的真实感。 物体表面的细节可以分为两类:一类是由物体表面颜色色彩、明暗变化体现出来的细节,如光滑瓷砖表面上装饰图案,它主要取决于物体表面的材质属性;另一类是由物体表面不规则的细小凹凸造成的细节,如桔子表面的皱纹,它主要取决于物体本身的几何形状。
纹理映射可以分为:颜色纹理映射和几何纹理映射。
颜色纹理映射用来在光滑表面上产生花纹图案的效果,几何纹理映射用来使物体表面产生凹凸不平的效果。
纹理模式:纹理的表示方法
(1)用数学函数表示
(2)用点阵表示,最常见的形式是图片文件。
8.4.1 颜色纹理
图片文件是定义在像素点上的色彩信息。若建立模型点与图片点的对应关系,则可以将图片中的颜色值应用在模型点上。
将纹理模式映射到物体模型表面,模拟物体表面细节和光照,称为纹理映射(Texture Mapping)
纹理映射是一个变换函数,反映了点的对应关系
( = f (u, w) ( = g (u, w)
或 u = r ((, () w = s ((,Φ)
通常假定映射函数是一个线性函数,如:
( = Au + B
( = Cw + D
线性映射是将图案“均匀”地贴在图形模型上。
映射函数与具体的“贴法”有关。
例1 三角形表面的纹理映射
(x1,y1,z1)(x2,y2,z2)(x3,y3,z3)
写成参数方程形式
x=x1+u(x2-x1)+v(x3-x1)
y=z1+u(y2-y1)+v(y3-y1)
z=z1+u(z2-z1)+v(z3-z1)
纹理映射函数为
θ=u*w
Φ=v*h
若给出一个u,v,则可以在纹理上确定一个颜色值,还可以计算x,y,z。该颜色即用在图形模型x,y,z位置 例2:圆球表面的纹理映射
u=θ/(π/2) v=(π/2 –φ)/(π/4)
θ=u*(π/2) φ=- (π/4)*v+ π/2
例3 圆柱面纹理映射和绘制步骤
任务:
设已知h,r和位图
对0≤u,v≤1范围的所有点
计算对应的纹理空间点,获取其颜色值
计算u,v对应的三维空间坐标x,y,z
计算x,y,z对应的屏幕坐标x’,y’
将颜色值应用在屏幕点x’,y’ (1)给出柱面参数坐标(u,v),
方法一:循环u,v,增量为du,dv=0.001。这个方法简单易行,但可能产生重复计算。
方法二:细分技术,首先用四边形网格覆盖圆柱面,再逐个网格细分,直至网格小到只覆盖一个像素,如使用Catmull算法。
(2)计算u,v对应的空间点x,y,z,及法线
法线向量为
(3)计算u,v对应的纹理坐标,取出图片改位置颜色
Pixels(vh,uw)
****如果不采用纹理,而进行光照计算:
给出灯光位置,材料参数,视点位置和方向。
根据前面计算的(x,y,z),(Nx,Ny,Nz),可以用phong公式计算颜色值。
(4)给出摄像机位置和方向
位置(Cx,Cy,Cz)
方向(nx,ny,nz)
上方(Ux,Uy,Uz)
则摄像机变换矩阵为
其中(ux,uy,uz)(vx,vy,vz)由给出的向量计算
对(x,y,z),(Nx,Ny,Nz)进行变换,进入摄像机坐标系
(5)按Roberts消隐法,若N’z0,不绘制,回到(1)
(6)进行投影变换,计算投影面内坐标。
设为平行投影,则x=x;y=y,z放弃
(7)进行视窗变换,计算(x,y)的屏幕坐标
(8)绘制点
习题:
1 写出三角形面片到纹理内任意区域的映射公式
2 绘制一个各面都有贴图的一个立方体,写出完整的计算步骤
8.4.2 几何纹理:凸凹纹理
为了能够绘制出物体表面的细微几何结构,基本思路是:在进行光照计算时,让法线产生适当的变化,从而使相邻点的色彩计算,产生较大的差异。
方法有:
凸凹纹理
凹凸查找表
位移映射
法线贴图
过程纹理
Blinn使用一个扰动函数b(u,w)来修正参数点(u,w)处的法线
应用了b(u,w)后,该点法线成为
b(u,w)根据所需要的效果给出。如在球面上应用以下函数
b(u, v) = 10sin(10u) sin(10v)
一些其它方法的示例:
8.5 透明处理与阴影显示
8.5.1 透明处理
如果一个物体是透明的,透明度为t。不考虑折射的影响时
I = t*Il + (1 -
文档评论(0)