计算机图形学之真实感图形的生成技术_第1页
计算机图形学之真实感图形的生成技术_第2页
计算机图形学之真实感图形的生成技术_第3页
计算机图形学之真实感图形的生成技术_第4页
计算机图形学之真实感图形的生成技术_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章 真实感图形显示真实感图形绘制: 通过综合利用数学、物理学、计算机以及心理学等知识在计算机图形输出设备上绘制出能够以假乱真的美丽景象。 涉及的技术有消隐、光照、纹理等。10.1 消隐技术消隐技术是计算机图形学的一个根本问题。问题由来:因为存在不透光的物体,因此挡住了某些物体局部的光线到达观测者,这些物体局部成为隐藏的不可见局部。投影变换将三维信息变换到二维平面上,这个过程中深度信息被丧失,生成的图形往往具有二义性.要消除二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称作消除隐藏线和隐藏面,简称为消隐。计算机生成的图要能真实的反响这一问题,因此必须把隐藏局部消除。消隐结果与观察物

2、体有关,也与视点有关。线框图 消隐图 真实感图形消隐分类根据处理场景时是直接对物体定义进行处理还是处理它们的投影图像分类物空间消隐Object space algorithms投影之前直接在三维空间中对物体进行消隐。把n个对象中的每一个与其它n-1个对象比较,消去不可见的对象: 像空间消隐(Image space algorithms)投影到二维显示空间并光栅化(图象空间)后进行消隐。物体空间的消隐算法将场景中每一个面与其他每个面比较,求出所有点、边、面遮挡关系。以场景中的物体为处理单元; for (场景中的每一个物体) 将其与场景中的其它物体比较,确定其外表的可见局部; 显示该物体外表的可见

3、局部; 图像空间的消隐算法对屏幕上每个象素进行判断,决定哪个多边形在该象素可见。以窗口内的每个像素为处理单元; for (窗口内的每一个像素) 确定距视点最近的物体,以该物体外表的颜色来显示像素 10. 2 多面体的隐藏线消除 讨论线消隐问题,通常假设其为线框模型。这种形式下,多面体用棱来表示,隐藏线便是某些不可见的棱或棱的一局部。如果能把棱上可见和不可见的分界点找到,消隐的问题就迎刃而解。 线消隐最根本的运算 判断面对线的遮挡关系。体也要分解为面,再判断面与线的遮挡关系。在遮挡判断中,要反复地进行线线、线面之间的求交运算。 为了提高算法的效率,需要设法减少求交的工作量。 1、消除自隐藏面设V

4、为由视点出发的观察向量,N为某多边形面的法向量。 假设V N0,称该多边形为后向面。假设V Nxmax2)或(ymin1ymax2) 或(xmin2xmax1)或(ymin2ymax1)时 两边界盒不相交,那么原来的两条边也不相交。式只是一个充分条件,上图中Q1Q2和Q3Q4虽然不相交,但是他们不满足。大量的不相交线段是可以用边界盒的方法判断出来。边界盒的方法还可用于判断两个多边形或两个多面体是否相交。ymaxyminxmaxxmin3、深度测试 在观察坐标系下判断线段与多边形的前后关系。如多边形完全在线段之后,那么线段完全可见,无需就线段和多边形的遮挡关系进行进一步判断。 以上措施有效地减少

5、了直线段求交的次数。10. 3 Z缓冲器消隐算法Z缓冲器算法帧缓存来存放每个象素的颜色值初值可放对应背景颜色的值深度缓存来存放每个象素的深度值,即相应象素所对应的物体上的点在观察坐标系下的Z坐标值。初值取成z的极小值。屏幕帧缓冲器每个单元存放对应象素的颜色值Z缓冲器每个单元存放对应象素的深度值10. 3 Z缓冲器消隐算法Z缓冲器算法帧缓存来存放每个象素的颜色值初值可放对应背景颜色的值深度缓存来存放每个象素的深度值,即相应象素所对应的物体上的点在观察坐标系下的Z坐标值。初值取成z的极小值。屏幕帧缓冲器每个单元存放对应象素的颜色值Z缓冲器每个单元存放对应象素的深度值z缓冲器中的单元与帧缓冲器中的单

6、元一一对应算法思路:先将z缓冲器中个单元的初始值置为-1(标准视见体的最小n值。当要改变某个像素的颜色值时,首先检查当前多边形的深度值是否大于该像素原来的深度值保存在该像素所对应的Z缓冲器的单元中,如果大于,说明当前多边形更靠近观察点,用它的颜色替换像素原来的颜色;否那么说明在当前像素处,当前多边形被前面所绘制的多边形遮挡了,是不可见的,像素的颜色值不改变。Z-Buffer算法 帧缓存全置为背景色深度缓存全置为最小Z值for(每一个多边形) 扫描转换该多边形 for(该多边形所覆盖的每个象素(x,y) ) 计算该多边形在该象素的深度值Z(x,y);if(Z(x,y)大于Z缓存在(x,y)的值)

7、 把Z(x,y)存入Z缓存中(x,y)处 把多边形在(x,y)处的颜色值存入帧缓存的(x,y)处 Z-Buffer算法在象素级上以近物取代远物。形体在屏幕上的出现顺序是无关紧要的。优点:有利于硬件实现。缺点:占用空间大,需要一个很大的z缓冲器。颜色是外来的光刺激作用于人的视觉器官而产生的主观感觉,影响的因素有:物体本身光源周围环境观察者的视觉系统10.4 光照技术图 (a) 经过光照计算的球 (b) 不经过光照计算的球 建立数学模型模拟物体外表的光照明物理现象,按照数学模型计算物体外表向视线方向辐射进入人眼中的光亮度,即可获得像素所对应的物体上的可见点的颜色,这样绘制出来的图形具有较强的真实感

8、,如图 (a)。这些数学模型就称为明暗效应模型或者光照明模型。 物体外表所呈现的颜色是由外表向视线方向辐射进入人眼中光决定的。 当光照射到物体外表时,光可能被吸收、反射和透射,被物体吸收的局部转化为热,只有反射、透射的光能够进入人眼产生视觉效果,它们决定了物体所呈现的颜色。如果物体是不透明的,那么透射光不存在,物体的颜色仅由反射光决定。这种情形正是简单光照模型需要考虑的,简单光照模型只考察光源直接照射下物体外表的反射情况。 Phong光照明模型(简单光照模型)简单光照明模型模拟物体外表对光的反射作用光源为点光源。反射光由环境光(Ambient Light) 、漫反射光(Diffuse Refl

9、ection)和镜面反射光(Specular Reflection)三局部组成。环境光环境光(ambient light)来自周围环境(如墙面)散射的光,在空间近似均匀分布,入射至物体外表后向空间各个方向均匀反射出去。正是由于有了环境光,场景中没有直接光照的局部才可见。漫反射分量表示特定光源在物体外表的反射光中那些向空间各个方向均匀反射出去的光。理想漫反射表示特定光源在物体外表的反射光中那些遵循反射定律的光。对于纯镜面,反射光和入射光对称地分布在外表法向的两侧。对于一般光滑外表,外表可理解为由许多朝向不同的微小平面构成,入射光经许多微小平面反射后形成的反射光不再是单向的,而是分布于理想镜面反射

10、方向的周围。镜面反射光将会在反射方向附近形成很亮的光斑,称为高光现象. 镜面反射 明暗处理 (a) 多边形表示的物体 (b) Gouraud明暗处理 光照计算时需要用到多边形上点的法矢量,如果多边形上点的法矢量总是取多边形的面法矢,那么由于不同平面片之间法矢量不连续,最终绘制出来的图像看起来呈多面体状。 解决方法:首先多边形的顶点法矢量不再简单的取为其所在多边形的面法矢,而是取为共该顶点的所有多边形的面法矢的平均值;其次多边形内部点的法矢量也不再简单地取为多边形的面法矢,而是利用多边形顶点的法矢量通过双线性插值计算出。 两个主要算法双线性光强插值、Gouraud明暗处理双线性法向插值、Phon

11、g明暗处理对P点进行双线性插值 Phong明暗处理插值法矢如图,P1、P2、P3是多边形顶点,其法矢量视为共该点的所有多边形法矢量的平均值。由P1、P2的法矢量可以线性插值计算出A点的法矢量,由P1、P3的法矢量可以线性插值计算出B点的法矢量,于是P点的法矢量可以由A、B点处的法矢量线性插值计算出,计算出P的法矢量后应用简单光照模型可以计算出P点的光亮度。 Gouraud明暗处理插值颜色 由于每个像素点都需要法向量插值和光照计算,Phong明暗处理计算量较大,一种简化的处理方法是先利用光照模型计算出多边形顶点处亮度,然后对亮度进行双线性插值,直接获得像素的颜色,如上图,P1、P2、P3是多边形

12、顶点,其亮度已经计算出。A点的亮度可以由P1、P2点的亮度线性插值计算出,B点的亮度可以由P1、P3点的亮度线性插值计算出,于是P点的亮度可以由A、B点的亮度线性插值计算出。 Phong明暗处理计算量远大于Gouraud明暗处理,但效果好。光强(法向)插值双线性插值由顶点的光强(法向)插值计算各边的光强(法向) ,然后由各边的光强(法向)插值计算出多边形内部点的光强(法向)10.5 物体外表细节的模拟物体外表的细节可以分为两类:一类是由物体外表颜色色彩、明暗变化表达出来的细节,如光滑瓷砖外表上装饰图案,它主要取决于物体外表的材质属性;另一类是由物体外表不规那么的细小凹凸造成的细节,如桔子外表的皱纹,它主要取决于物

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论