收藏 分享(赏)

真 实感图形显示四.ppt

上传人:weiwoduzun 文档编号:5672400 上传时间:2019-03-11 格式:PPT 页数:47 大小:1.48MB
下载 相关 举报
真 实感图形显示四.ppt_第1页
第1页 / 共47页
真 实感图形显示四.ppt_第2页
第2页 / 共47页
真 实感图形显示四.ppt_第3页
第3页 / 共47页
真 实感图形显示四.ppt_第4页
第4页 / 共47页
真 实感图形显示四.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、真实感图形显示,真实感图形显示,简述 线和面的消隐 光照模型 光线跟踪 文理映射 颜色模型,真实感图形显示简述,野外场景模拟,小区规划设计,机械设备仿真,室内装修展示,真实感图形显示简述,生成真实感图形的基本步骤:,(1)构建模型 用数学方法建立实体三维模型,并存储到系统中;(2)投影变换 将实体模型转换到三维观察坐标系中;(3)消隐处理 用消隐技术去除视景外的和实体上不可见的面;(4)光照处理 建立光照模型生成真实感图形。,消隐,消隐算法确定视点后,将物体上不可见的点、线、面消去的算法。 消隐算法分类:按操作对象的不同表达方式:对象空间方法(object space method)图像空间方

2、法(image space method)从应用角度 : 线的消隐(Hidden-Line)面的消隐(Hidden-Surface),消隐算法,对象空间是三维空间,对象空间法通过分析对象的三维特性之间的关系来确定是否可见。 图像空间是对象投影后所在的二维空间,图像空间法将对象投影后分解为像素,按照一定的规律,比较像素之间的z值,从而确定是否可见,线消隐(Hidden-Line),凸多面体的隐藏线消除,组成凸多面体的面的方程为(8.1),为多面体内一点,为P0在平面i上的垂足,则有,线消隐(Hidden-Line),根据向量点积的几何意义得它们的夹角为180,因此法矢量指向物体外部,设式(8.1

3、)所定义的凸多面体在以视点为顶点的四棱锥内,视点与第i个面上一点的连线的方向为 。,当 时,平面i为自隐藏面,一般取视点为z轴负无穷远点,那么在xoy平面上,视线方向为(0,0,1),所以ci0所对应的面为自隐藏面。任意自隐藏的交线为自隐藏线。,线消隐(Hidden-Line),凹多面体的隐藏线消除,消除隐藏线问题可归结为:对于空间一条线段P1P2和多边形a,判定线段是否被多边形遮挡。,1、无交点1)分离 无隐藏关系2)在多边形内线段在多边形前,线段在多边形后,判定方法,Z轴:射线,线消隐(Hidden-Line),2、有交点多边形的边把线段分割成子线段,判断子线段的隐藏性:判定子线段是否落在

4、多边形投影内,排除完全可见的子线段,线段投影被分为若干子线段,可见子线段的确定,t11,t32,t12,t13,t14,t31,t15,t16,t21,t22,t33,t34,t41,t42,t51,t52,t53,t54,t43,t44,面消隐(Hidden-surface),裁剪多边形,被裁剪多边形,内部多边形,外部多边形,面消隐(Hidden-surface),深度缓存算法(Z-Buffer),帧缓冲区置成背景色; Z缓冲区置成最小Z值;for(各个多边形)扫描转换该多边形;for(多边形所覆盖的每个像素(x,y)计算多边形在该像素的深度值if(Z(x,y)大于Z缓冲区在(x,y)处的值

5、)把Z(x,y)存入Z缓冲区的(x,y)处;把多边形在(x,y)处的亮度值存入帧缓冲区的(x,y)处; ,面消隐(Hidden-surface),Z缓冲区示意图,光照模型,光源特性和物体表面特性决定了物体表面色彩和明暗变化。,1、光源特性,Color_light=(Ir,Ig,Ib),Ir,Ig,Ib分别是RGB三色光的强度,(1)光的色彩,(2)光的强度,I=0.3*Ir+0.59*Ig+0.11*Ib,光照模型,1、光源特性,(3)光的方向 (直射光和漫射光) 1)点光源(point light source)从一点像各个方向发光(eg灯泡)2)分布式光源(distributed )从一个

6、面向一个方法发光(eg太阳)3)漫射光源(ambient )从一个面上的每个点向各个方向发光(eg地面),点光源,分布式光源,漫射光源,光照模型,2、物体表面特性,(1)反射系数反射系数由物体表面的材料和形状决定,反射系数分为漫反射(diffuse reflection)系数和镜面(specular)反射系数。1)漫反射系数记为Kd,表示物体表面向各个方向漫反射光线的能力。可分解为Kd-r,Kd-g,Kd-b,Kd介于01之间。2)镜面反射系数记为Ks,表示物体表面沿着镜 面方向反射光线的能力。,i,实验证明:物体表面的颜色主要由光源的色彩和漫反射系数来模拟,镜面反射系数主要反映物体表面产生高

7、光的现象。,光照模型,2、物体表面特性,(2)透射系数 投射系数记为Tp,表示物体透射光的能力。 Tp介于01之间。1表示完全透明,0表示完全不透明。 (3)表面方向: 物体表面的方向用法线N表示,N=(A,B,C),光照模型及其实现,光照模型描述物体表面的色彩明暗同光源特性、物体表面特性之间的关系。,1、漫射(disffuse)光线的情况物体表面的色彩明暗与表面形状无关,仅与表面的反射系数有关。,漫射光源照明模型,光照模型及其实现,2、镜面反射情况物体表面的明暗随表面法矢量和入射 光线的夹角的改变而变化。,s,光照模型及其实现,镜面反射系统W()与入射角的关系,N与高光区域大小的关系,光照模

8、型及其实现,3、透射光线的情况,单一直射光源情况下,物体表面P点处所发光强计算机公式,光照模型及其实现,1)求cos i,2)求cos s,phong,(1)根据反射定律,入射光、表面法线和反射光必在同一平面上,且入射角等于反射角。,1先作变换T,将坐标原点移至p点,z轴指向P点的法线方向 2在新坐标系下,入射矢量和反射矢量的z分量相等,x、y分量大小相等,方向相反。,光照模型及其实现,R单位矢量的求法,3作逆变换T-1,,1先作变换T,将坐标原点移至p点,z轴指向光线入射的反方向 2在新坐标系下,由于 在同一平面 内,L向单位矢量和z轴重合,因此N和R向单 位矢量在xoy平面的投影n和r在同

9、一条直线上,(2)Phong的方法,光照模型及其实现,R单位矢量的求法,光照模型及其实现,令,则,根据单位矢量的性质,(4.7),(4.8),(4.9),(4.10),(4.11),光照模型及其实现,将式(4.11)和(4.8)共同带入式(4.9),得,将式(4.10)带入式(4.12),得,(4.12),于是得,入式(4.7),得,3作逆变换T-1,,(4.13),(4.14),Phong光照模型,综合上面介绍的光反射作用的各个部分,Phong光照明模型有这样的一个表述:由物体表面上一点P反射到视点的光强I为环境光的反射光强Ie、理想漫反射光强Id、和镜面反射光Is的总和,即:,在这种简化下

10、,由于对所有的点总共只需计算一次H的值,节省了计算时间。结合RGB颜色模型,Phong光照明模型最终有如下的形式:,光照模型及其实现,明暗的光滑处理,1、Gourand方法 亮度插值方法 2、Phong 法线方向插值法,光线跟踪,光线跟踪示意图,视线在p0处的反射和投射,光线跟踪,光线跟踪树,Pi点所受到的光照,阴影的生成,对于隐藏面消除算法,是从观察点看,确定哪些表面是可见的。而对于阴影发现算法,是从点光源“看”,确定哪些表面是可见的。从观察点和从点光源都能看见的表面,就是可见的表面。从观察点可见,而从点光源不可见的表面,就在阴影之中。 应当注意,这种简便方法不能构造出来自分布光源的阴影。如

11、果要把分布光源造成的阴影也考虑进去,则必须计算阴影的本影和半影。,阴影可以分为本影和半影。 本影:景物表面上未被任何光源直接照射到的区域。 半影:景物表面被部分光源照射但没被全部光源照射到的半明半暗的区域。 点光源:光线由光源出发向四周发散,和场景中物体相比,光源很小且距离景物足够远。 分布式光源:光源与场景中的物体相比不够小,且距景物较近,这时需计算光源外表面各点所共同产生的光照。单一点光源只能产生本影。而线光源、面光源或分布式光源可同时产生本影和半影。,阴影的生成,本影的计算简单,半影计算复杂。我们只考虑本影的计算。,阴影的生成,阴影的生成,当要表现一个客体时,可以分别对观察点及各点光源实

12、施同样的消除隐藏面的算法,分别对观察点及各点光源确定出相应的可见部分和不可见部分,然后把所得结果进行整理,通过正确形成明暗而表现出来。当要对同一物体从许多不同观察点进行观察时,对所看到的一系列情形,可以只做一次发现阴影的计算,因为当点光源相对物体是固定时.阴影实际上和观察点的位置无关。,计算阴影还有许多其他的方法。对由多边形表面组成的客体, 是对从光源来说是完全可见或者部分可见的多边形,都附加上另一个与之共面的多边形,称为细碎多边形.计算细碎多边形的方法,是用遮挡光线多边形的投影,相对多边形表面,用对多边形进行剪裁的算法进行剪裁.下图示意说明了这种情况.图中在立方体和光源之间有一个不透明的三角

13、形面,立方体有两个面产生了阴影,在那两个面上附加上了细碎多边形.,阴影的生成,光源在无穷远处,投射阴影的多边形,细碎多边形,位于立方体顶面的阴影,位于多边形前面的阴影,完全位于阴影中的面,因而并不加上细碎多边形,颜色模型颜色的特性,颜色是一种波动的光能形式,从光学角度看,光在本质上是电磁波。英国科学家牛顿于1666年通过用三棱镜做实验证明了白光是所有可见光的组合。并发现了色散现象。依次按波的顺序排列的彩色光带,就称为光谱。,颜色模型颜色特性,颜色有如下三个特性:色调、饱和度和亮度。从物理光学的角度出发,颜色可以用主波长、纯度和明度来定义。,RGB模型RGB 颜色模型通常使用于彩色阴极射线等彩色

14、光栅图形显示设备中,它是我们使用最多最熟悉的颜色模型。红、绿、蓝原色是加性原色,各个原色混合在一起可以产生复合色。RGB 颜色模型通常采用单位立方体来表示。,颜色模型模型类型,CMY颜色模型以红、绿、蓝的补色青、品红、黄为原色构成,常用于从白光中滤去某种颜色,又被称为减性原色系统。CMY颜色模型也采用单位立方体来表示。与RGB颜色模型相似。CMY颜色模型常用于印刷硬拷贝设备。,颜色模型模型类型,颜色模型颜色实现,计算机颜色 RGBA方式存储和颜色索引模式 RGBA模式中的R、G、B、A数值对应于每个像素点,而在颜色索引模式中,对应于每个像素点的是单个数值(称为颜色索引)。 颜色数据是由帧缓冲区

15、的位平面(bitplane)数量决定在每个像素中,1个位平面表示1位数据。屏幕窗口坐标以像素为单位,像素的颜色是通过用一系列OpenGL函数来设置的。,颜色模型颜色实现,颜色模型OpenGL,指定颜色 颜色索引模式下使用的函数为glIndex(),原型如下:void glIndexs i f d (TYPE c);void glIndexs i f d v(TYPE *c);,指定着色模式 用glShadeModel()函数指定着色模型,原型如下:void glShadeModel(GLenum mode); 其中,mode参数可以是GL_SMOOTH或GL_FLAT,其中GL_SMOOTH 为默认值。,颜色模型实例,纹理,纹理(texture) 物体的表面细节光滑表面上额外地增加图案,当图案加上后,表面仍然保持光滑,这一过程基本上可用一个映射函数描述;表面呈现出凸凹不平的形状,这一过程可用一个扰动函数来描述.,光线跟踪,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报