《真实感图形绘制》PPT课件.ppt

上传人:小飞机 文档编号:5558256 上传时间:2023-07-20 格式:PPT 页数:80 大小:505KB
返回 下载 相关 举报
《真实感图形绘制》PPT课件.ppt_第1页
第1页 / 共80页
《真实感图形绘制》PPT课件.ppt_第2页
第2页 / 共80页
《真实感图形绘制》PPT课件.ppt_第3页
第3页 / 共80页
《真实感图形绘制》PPT课件.ppt_第4页
第4页 / 共80页
《真实感图形绘制》PPT课件.ppt_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《《真实感图形绘制》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《真实感图形绘制》PPT课件.ppt(80页珍藏版)》请在三一办公上搜索。

1、第十章 真实感图形绘制,简单光照明模型多边形绘制方法透明整体光照明模型光线跟踪算法,第十章 真实感图形绘制,光照模型(Illumination Model):计算某一点的光强度的模型,真实感图形的特点,能反映物体表面颜色和亮度的细微变化能表现物体表面的质感能通过光照下的物体阴影,极大地改善场景的深度感和层次感,充分体现物体间的相互遮挡关系能模拟透明物体的透明效果和镜面物体的镜面效果,影响观察者看到的表面颜色的因素,物体的几何形状光源 位置、距离、颜色、数量、强度、种类环境 遮挡关系、光的反射与折射、阴影视点位置物性 材料、颜色、透明度 折射性表面光洁度,光源,几何性质点光源线光源面光源光谱组成

2、白色光等能量的各种波长可见光的组合彩色光单色光,真实感图形学早期发展,1967年,Wylie等人第一次在显示物体时加进光照效果,认为光强与距离成反比。1970年,Bouknight提出第一个光反射模型:Lambert漫反射环境光1971年,Gouraud提出漫反射模型加插值的思想1975年,Phong提出图形学中第一个有影响的光照明模型,相关物理知识,光的传播反射定律:入射角等于反射角,而且反射光线、入射光线与法向量在同一平面上,光源,法向量,入射光,反射光,视线,折射定律,折射定律:折射线在入射线与法线构成的平面上,折射角与入射角满足,能量关系,在光的反射和折射现象中的能量分布:下标为i,d

3、,s,t,v的能量项分别表示为入射光强,漫反射光强,镜面反射光强,透射光强,吸收光强能量是守恒的,简单光照明模型,模拟物体表面的光照明物理现象的数学模型光照明模型简单光照明模型亦称局部光照明模型,其假定物体是不透明的,只考虑光源的直接照射,而将光在物体之间的传播效果笼统地模拟为环境光。可以处理物体之间光照的相互作用的模型称为整体光照明模型,简单光照明模型,光照射到物体表面,主要发生:反射透射(对透明物体)部分被吸收成热能反射光,透射光决定了物体所呈现的颜色,简单光照明模型-环境光,假定物体是不透明的(即无透射光)环境光:在空间中近似均匀分布,即在任何位置、任何方向上强度一样,记为Ia环境光反射

4、系数Ka:在分布均匀的环境光照射下,不同物体表面所呈现的亮度未必相同,因为它们的环境光反射系数不同。光照明方程(仅含环境光):Ie=KaIa Ie为物体表面所呈现的亮度。,简单光照明模型-环境光例子,具有不同环境光反射系数的两个球,简单光照明模型-环境光,缺点:虽然不同的物体具有不同的亮度,但是同一物体的表面的亮度是一个恒定的值,没有明暗的自然过度。,简单光照明模型,考虑引入点光源。点光源:几何形状为一个点,位于空间中的某个位置,向周围所有的方向上辐射等强度的光。记其亮度为Ip点光源的照射:在物体的不同部分其亮度也不同,亮度的大小依赖于物体的朝向及它与点光源之间的距离.,简单光照明模型:-漫反

5、射角度余弦的推导,漫反射粗糙、无光泽物体(如粉笔)表面对光的反射光照明方程 漫反射的亮度 点光源的亮度 漫反射系数 入射角漫反射光的强度只与入射角有关,简单光照明模型-漫反射,将环境光与漫反射结合起来一般取Ia=(0.020.2)Id例子,简单光照明模型-漫反射,缺点:对于许多物体,使用上式计算其反射光是可行的,但对于大多数的物体,如擦亮的金属、光滑的塑料等是不适用的,原因是这些物体还会产生镜面发射。,简单光照明模型-镜面反射,镜面反射光滑物体(如金属或塑料)表面对光的反射高光入射光在光滑物体表面形成的特别亮的区域,简单光照明模型-镜面反射,理想镜面反射观察者只能在反射方向上才能看到反射光,偏

6、离了该方向则看不到任何光。,简单光照明模型-镜面反射,非理想镜面反射P为物体表面上一点,L为从P指向光源的单位矢量,N为单位法矢量,R为反射单位矢量,V为从P指向视点的单位矢量,光滑平面,I=Ip K scosna,镜面,简单光照明模型-镜面反射,镜面反射Is为镜面反射光强。点光源的亮度Ks是与物体有关的镜面反射系数。n为镜面反射指数,n越大,则Is随a的增大衰减的越快。n的取值与表面粗糙程度有关。n越大,表面越平滑(散射现象少,稍一偏离,明暗亮度急剧下降)n越小,表面越毛糙(散射现象严重),或,简单光照明模型-镜面反射,反射方向计算L在N上的投影矢量为Ncosu,则S+L=Ncosu 记矢量

7、S=Ncosu-L则有R=Ncosu+S,简单光照明模型-Phong光照明模型,简单光照明模型模拟物体表面对光的反射作用,光源为点光源反射作用分为物体间作用用环境光(Ambient Light)漫反射(Diffuse Reflection)镜面反射(Specular Reflection),简单光照明模型-Phong光照明模型,Phong光照明模型的综合表述:由物体表面上一点P反射到视点的光强I为环境光的反射光强Ie、理想漫反射光强Id、和镜面反射光Is的总和。,简单光照明模型-Phong光照明模型的实现,对物体表面上的每个点P,均需计算光线的反射方向。为了减少计算量,假设:光源在无穷远处,L

8、为常向量视点在无穷远处,V为常向量(HN)近似(RV),H为L与V的平分向量,N,H,L,R,a,V,b,H-L和V的角平分线,对所有的点总共只需计算一次H的值,节省了计算时间,简单光照明模型-Phong光照明模型,Phong模型几何,简单光照明模型-光的衰减,光的衰减两个阶段:1)从光源到物体表面的过程中的衰减2)从物体表面到人眼过程中的衰减总的效果:物体表面的亮度降低光照明方程 1)有效衰减函数的加入2)深度暗示技术的加入,简单光照明模型-光的衰减,光的衰减光在光源到物体表面过程中的衰减光强按 1/d2 进行衰减:缺点:当d很大时,变化很小;当d很小时,变化很大。衰减函数光照明方程,简单光

9、照明模型-光的衰减,光在物体表面到人眼过程中的衰减深度暗示(Depth Cueing)技术:最初用于线框图形的显示,使距离远的点比近的点暗一些。经过改进,这种技术同样适用于真实感图形显示。设前参考面Z=Zf,后参考面Z=Zb;其比例因子分别为Sf和Sb(Sf和Sb e0,1)。给定物体上一点的深度值Z0,该点对 应的比例因子S0按如下 方式确定,前参考面,后参考面,简单光照明模型-光的衰减,当Z0 Zf时,取S0=Sf当Z0 Zf时,取S0=Sb当Z0e Zb,Zf时,取原亮度I按比例S0与融和亮度Idc混合,目的是获得最终用于显示的亮度I,Idc由用户指定,,简单光照明模型-光的衰减,特例:

10、取Sf=1,Sb=0,Idc=0,则当物体位于参考面之前时,S0=Sf=1,I=I,即亮度没有被衰减。当物体位于后参考面之后时,S0=Sb=0,I=Idc=0,即亮度衰减为0。而当Z0e Zb,Zf时,I=S0I,亮度被部分衰减。由此可以产生较好的效果。,简单光照明模型-彩色场景的产生,产生彩色选择合适的颜色模型-RGB模型为颜色模型中的每一种基色建立光照明方程,简单光照明模型-彩色场景的产生,系数分解上述各等式中,右端的矢量用来控制表面的基本颜色,当选定了物体表面的颜色之后,它们就固定不变了。用户通过调节Ka,Kd,Ks来改变表面的反射率。,简单光照明模型-彩色场景的产生,新的光照明方程统一

11、表示,简单光照明模型-多个光源,采用多个光源采用m个光源的光照明方程,简单光照明模型-多个光源,例子:其中a图:线框图 b图:环境光c图:增加漫反射 d图:增加镜面反射e图:增加光的衰减 f图:两个点光源,Phong光照明模型的不足,Phong光照明模型是真实感图形学中提出的第一个有影响的光照明模型经验模型,Phong模型存在不足:显示出的物体象塑料,无质感变化没有考虑物体间相互反射光镜面反射颜色与材质无关镜面反射大入射角失真现象,多边形绘制方法,分类:均匀着色与光滑着色均匀着色方法:任取多边形上一点,利用光照明方程计算出它的颜色,用这个颜色填充整个多边形适用场合:1)光源在无穷远处;2)视点

12、在无穷远处;3)多边形是物体表面的精确表示;,多边形绘制方法,缺点:产生的图形效果不好。如左图:相邻两个多边形的法向不同,计算出来的颜色也不同,因此造成整个物体表面的颜色过渡不光滑。如何解决?光滑着色,亦称插值着色Gouraud着色方法Phong着色方法,Gouraud着色方法,Gouraud于1971年提出,又被称Gouraud明暗处理基本思想:在每个多边形顶点处计算颜色,然后在各个多边形内部进行线性插值,得到多边形内部各点颜色。即它是一种颜色插值着色方法。注意:Gouraud着色方法并不是孤立的处理单个多边形,而是将构成一个物体表面的所有多边形(多边形网格)作为一个整体来处理。,Goura

13、nd 着色方法,对多边形网格中的每一个多边形,Gourand 着色处理分为如下四个步骤:步骤1、计算多边形的单位法矢量2、计算多边形顶点的单位法矢量,与某个顶点相邻的所有多边形的法向平均值近似作为该顶点的近似法向量计算出的平均法向一般与该多边形物体近似曲面的切平面比较接近,Gouraud着色方法-顶点法向计算,Gourand 着色方法,3、利用光照明方程计算顶点光强(颜色)4、对多边形顶点光强(颜色)进行双线性插值,获得多边形内部各点的光强(颜色),Gourand 着色方法-光强插值,双线性光强插值:假设待绘制的三角形投影为P1P2P3,Pi的坐标为(xi,yi),i=1,2,3;一条扫描线与

14、三角形的两条边分别交于A(xA,yA),B(xB,yB)两点。P(x,y)是AB上的一点。A点的颜色IA由P1、P2点的颜色I1、I2线性插值得到,Gourand 着色方法-增量算法,采用增量算法可以加速计算。1)当扫描线y递增一个单位变为y+1时,IA、IB的增量分别为DIA,DIB,即,Gourand 着色方法-增量算法,2)当x递增一个单位时,IP的增量为DIP 即,Gourand 着色方法,优点:能有效的显示漫反射曲面,计算量小缺点:1、高光有时会异常2、当对曲面采用不同的多边形进行分割时会产生不同的效果。3、Gouraud明暗处理会造成表面上出现过亮或过暗的条纹,称为马赫带(Mach

15、_band)效应改进Phong提出双线性法向插值,以时间为代价,解决高光问题,Phong着色方法,基本思想:通过对多边形顶点的法矢量进行插值,获得其内部各点的法矢量,又称为法向插值着色方法。步骤1、计算多边形单位法矢量2、计算多边形顶点单位法矢量 3、对多边形顶点法矢量进行双线性插值,获得内部各点的法矢量 4、利用光照明方程计算多边形内部各点颜色,Phong着色方法-法向插值,NA由N1、N2线性插值得到:,Phong着色方法-增量算法,采用增量算法可以加速计算。1)当扫描线y递增一个单位变为y+1时,NA、NB的增量分别为DNA,DNB,即,Phong着色方法-增量算法,2)当x递增一个单位

16、时,IP的增量为DIP 即,Phong着色方法,优点:Phong着色方法绘制的图形比Gouraud方法更真实,体现在两个方面:高光区域的扩散,产生正确的高光区域缺点:1、Phong着色方法计算量远大于Gouraud着色方法 2、在处理某些多边形分割的曲面时,Phong算法还不如Gouraud算法好。,增量式模型示例,牛的三角网格模型 用简单光照明模型显示 用增量式光照明模型显示,插值多边形绘制方法,着色方法存在的问题不光滑的物体轮廓:物体边缘轮廓是折线段而非光滑曲线,插值着色多边形绘制方法,方向依赖性,插值着色多边形绘制方法,公共顶点处颜色不连续顶点方向不具有代表性,透明,现实世界中有许多透明

17、物体,如玻璃等。透过透明物体,可以观察到其后面的景物。如何模拟这种透明效果呢?模拟透明的最简单的方法是忽略光线在穿过透明体时所发生的折射。虽然这种模拟方法产生的结果不真实,但在许多场合往往非常有用。例如:我们有时希望能够看到透过某透明物体观察其后面的景物,而又不希望景物应为折射而发生变形。,透明效果的简单模拟,不考虑透明体对光的折射以及透明物体本身的厚度光通过物体表面不改变方向产生简单透明效果的方法插值透明方法过滤透明方法,简单透明-插值透明,假设:多边形1是透明的,它位于观察者与不透明的多边形2之间。像素的颜色Il由A、B两点的颜色Il1和Il2插值产生,即其中Kt1是多边形1的透射系数。K

18、t1范围(0,1)Kt1=0表示多边形完全不透明,所以Il=Il1Kt1=1表示多边形完全透明,所以Il=Il2,简单透明-插值透明,为了产生逼真的效果,通常只对两个多边形表面颜色的环境光分量和漫反射分量采用 进行计算,得到的结果再加上多边形1的镜面反射分量作为像素的颜色值。,简单透明-过滤透明,过滤透明方法将透明物体看作一个过滤器,有选择的允许某些光透过而屏蔽了其余的光。对右图有:其中Kt1仍是多边形1的透射系数,但不再局限于(01)。Kt1越大,多边形2的颜色透过来的越多。Ctl对不同的颜色各不相同。Ctl=0表示某种颜色的光不能透过多边形1。,简单透明,无论采用插值透明方法还是采用过滤透

19、明方法,当多边形1之前还有其它的透明多边形时,Il都要递归计算。简单透明比较容易结合到多边形绘制算法中。,考虑折射的透明,折射定律其中:i,t分别是入射光线在空气,物体中的折射率,i、t分别是入射角和折射角,考虑折射的透明-透射矢量的计算,设单位入射光矢量为I(方向与光线的入射方向相反),单位法矢量为N,单位透射光矢量为T,则,考虑折射的透明,当光线从高密度介质向低密度介质时,hiht,即qtqi。如果入射角不断增大,到一定的程度,折射角qt=90度,此时透射光线沿着平行于分界面的方向传播,称此时的qi为临界角度,记为qc。当qi qc时,发生全反射,透射与反射光合二为一。如何产生带有折射的透

20、明效果呢?,光透射模型的研究,早期简单透射现象的模拟1980年,Whitted光透射模型,首次考虑了光线的折射现象1983年,在Whitted的基础上,Hall光透射模型,考虑了漫透射和规则透射光,整体光照明模型,简单光照模型(亦称局部光照模型)不考虑周围环境对当前景物表面的光照明影响,忽略了光在环境景物之间的传递,很难表现自然界复杂场景的高质量真实感图形。为了增加图形的真实感,必须考虑环境的漫射、镜面反射和规则投射对景物表面产生的整体照明效果。,整体光照明模型,物体表面入射光的构成(1)光源直接照射(2)其它物体的反射光(3)透射光局部光照明模型仅考虑了(1),整体光照明模型,例如:从视点观

21、察到的物体A表面的亮度来源于三方面的贡献:(1)光源直接照射到A的表面,然后被反射到人眼中的光产生的。(2)光源或其它物体的光经A物体折射到人眼中的光产生的。(3)物体B的表面将光反射到物体A的表面,再经物体A的表面反射到人眼中产生的。局部光照明模型仅考虑了(1),Witted光照模型,Whitted光照模型基于如下假设:物体表面向视点方向V辐射的光亮度Il由三部分组成:(1)光源直接照射引起的反射光亮度Ill。(2)来自V的镜面反射方向R的其它物体反射或折射来的光的亮度Isl。(3)来自V的透射方向T的其它物体反射或折射来的光的亮度Itl,Witted光照模型,Witted光照模型:Il=I

22、ll+Ks Isl+KtItl或Isl为镜面反射方向的入射光强度;Ks为镜面反射系数,为01之间的一个常数Itl为折射方向光强,Kt为透射系数,是0 1之间的常数Ill的计算可采用Phong模型因此,关键是Is和It的计算。如何计算呢?,Witted光照模型-反射、折射方向计算,已知视线方向V,求其反射方向R与折射方向T(N是表面的法向方向)视线V的反射方向R折射方向T,光线跟踪算法的基本原理,自然界中光线的传播过程光源物体表面物体表面人眼光线跟踪过程-光线传播的逆过程,光线跟踪算法的基本原理,从视点向每个象素发出一条光线,它与场景中的一些物体表面相交,最近的交点即为可见点,记为P,像素的亮度

23、即由P点的亮度确定。由Whitted光照模型可知,P点的亮度由三部分组成:其中Ill可以直接由局部光照模型计算得到。,光线跟踪算法的基本原理,为了求Isl和Itl,从P点发出反射光线和透射光线,它分别交场景中的物体表面于Ps和Pt,Ps和Pt点的亮度即分别为Isl和Itl,将它们求出代入Whitted模型即可。但是,Isl和Itl同样由Whitted模型确定,即Whitted模型是一个递归式,从而计算Isl和Itl需要重复以上的计算过程:计算局部光亮度、发出反射光线与透射光线。可以用一棵光线树来表示,光线跟踪算法的基本原理,递归终止条件:1、光线不与场景中的任何物体相交2、被跟踪的光线达到了给

24、定的层次3、由于Ks和Kt都小于1.0,当光线经过反射和折射后,其亮度会衰减。因此可以预先设置一个阈值,在进行光线跟踪时,若被跟踪光线对像素亮度的贡献小于这个阈值,便停止跟踪。,光线跟踪算法-算法描述,设置视点,投影平面以及窗口的参数;For(窗口内的每一条扫描线)for(扫描线上的每一个像素)确定从视点指向像素中心的光线ray;像素的颜色=RayTracing(ray,1);,光线跟踪算法描述,Color RayTracing(Ray ray,int depth)求ray与物体表面最近的交点P;if(有交点)用局部光照明模型计算P点的Ic;color=Ic;if(depth给定的最大跟踪层次)计算ray的反射光线;Is=RayTracing(反射光线,depth+1);if(物体是透明的)计算ray的透射光线;It=RayTracing(透射光线,depth+1);color=Ic+Is+It;else color=black;return color;,光线跟踪算法,优点:能够方便的产生阴影,模拟镜面反射与折射现象。缺点:计算量大,每一条光线都要与场景中的物体进行求交、计算光照模型等。,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号