三维形体的真实感显示PPT文档格式.ppt

上传人:b****1 文档编号:14312933 上传时间:2022-10-22 格式:PPT 页数:51 大小:3.95MB
下载 相关 举报
三维形体的真实感显示PPT文档格式.ppt_第1页
第1页 / 共51页
三维形体的真实感显示PPT文档格式.ppt_第2页
第2页 / 共51页
三维形体的真实感显示PPT文档格式.ppt_第3页
第3页 / 共51页
三维形体的真实感显示PPT文档格式.ppt_第4页
第4页 / 共51页
三维形体的真实感显示PPT文档格式.ppt_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

三维形体的真实感显示PPT文档格式.ppt

《三维形体的真实感显示PPT文档格式.ppt》由会员分享,可在线阅读,更多相关《三维形体的真实感显示PPT文档格式.ppt(51页珍藏版)》请在冰豆网上搜索。

三维形体的真实感显示PPT文档格式.ppt

根据多面体表面的平面法矢决定颜色值,直接调用OpenGL的多边形填充算法即可。

算法简单,但轮廓分明,各多边形之间过渡不光滑。

2)Gouraud模型,算法思想:

为使多边形边界之间光滑显示,先计算多边形各顶点光强,后通过双线性插值,计算多边形内各点光强。

能保证多边形边界颜色的连续性,但高光模糊,有时出现过亮或过暗条纹(即马赫效应)。

计算较为简单,OpenGL算法已实现硬件加速。

算法步骤:

For(每一个三角形)1)计算多边形顶点的平均法向;

2)根据基本光照模型计算顶点的平均光强;

3)通过线性插值,计算多边形的边上的各点光强;

4)通过线性插值,计算多边形内部各点的光强。

10三维形体的真实感显示,1.简单效果的浓淡图生成2.一般性效果图形生成3.真实感效果图生成1)全局关照模型2)光线跟踪3)辐射度算法4.纹理映射,2.一般性效果图形生成,1)简单光照明模型-Phong模型,简单光照明模型模拟物体表面对光的反射作用。

光源被假定为点光源,反射作用被细分为镜面反射(SpeculaReflection)和漫反射(DiffuseReflection)。

简单光照明模型只考虑物体对直接光照的反射作用,而物体间的光反射作用,只用环境光(AmbientLight)来表示。

Phong模型是一种简单光照明模型,不妨设:

入射光强为Ip物体表面上点P的法向为N从点P指向光源的向量为L两者间的夹角为,A)理想漫反射当光源来自一个方向时,漫反射光均匀向各方向传播,与视点无关,它是由表面的粗糙不平引起的,因而可假定漫反射光的空间分布是均匀的。

P,如果Ip表示点光源的强度,kd表示物体表面漫反射系数,则漫反射方程可描述为:

若N为物体表面的单位法向量,L为物体表面上一点指向光源的单位矢量,则:

如果有多个光源,则光强度计算式为:

B)镜面反射光对于理想镜面,反射光集中在一个方向,并遵守反射定律。

对一般的光滑表面,反射光集中在一个范围内,且由反射定律决定的反射方向光强最大。

因此,对于同一点来说,从不同位置所观察到的镜面反射光强是不同的。

镜面反射光强可表示为:

Ks是与物体有关的镜面反射系数,a为视线方向V与反射方向R的夹角,n为反射指数,反映了物体表面的光泽程度,一般为12000,数目越大物体表面越光滑。

镜面反射光将会在反射方向附近形成很亮的光斑,称为高光现象。

镜面反射光产生的高光区域只反映光源的颜色将V和R都格式化为单位向量,镜面反射光强可表示为:

式中:

对多个光源:

C)环境光环境光是指光源间接对物体的影响,是在物体和环境之间多次反射,最终达到平衡时的一种光。

近似地认为同一环境下的环境光,其光强分布是均匀的,它在任何一个方向上的分布都相同。

例如,透过厚厚云层的阳光就可以称为环境光。

在简单光照明模型中,用一个常数来模拟环境光,用式子表示为:

其中:

Ia为环境光的光强Ka为物体对环境光的反射系数,D)Phong光照明模型综上分析,Phong光照明模型表述为:

由物体表面上一点P反射到视点的光强I为环境光的反射光强Ie、理想漫反射光强Id、和镜面反射光Is的总和,即:

按R、G、B三种颜色分量展开计算得:

IIeIdIs,由此可得:

用Phong模型进行计算时,对物体表面上每个点P,均需计算光线的反射方向R,再由V计算(RV),为减少计算,可作如下假设:

a)光源在无穷远处,即光线方向L为常数;

b)视点在无穷远处,即视线方向V为常数;

c)为避免计算反射方向R,用(HN)近似代替(RV)这里H为L和V的平分向量,即:

H(LV)/|LV|,注意:

Phong模型对物体表面的每一点的光强进行计算,显然其计算量较大。

E)Phong模型计算实例图中可以看出高光指数n、漫反射Kd及镜面系数Ks对显示效果的影响亮点集中面积亮度,Phong光照明模型是真实感图形学中提出的第一个有影响的光照明模型,生成图象的真实度已达到可接受程度。

但在实际应用中,它是一个经验模型,还具有以下的一些问题:

用Phong模型显示出的物体象塑料,没有质感;

没有考虑距离对光照强度的衰减影响;

环境光是常量,没有考虑物体之间相互的反射光;

镜面反射的颜色是光源的颜色,与物体的材料无关;

镜面反射的计算在入射角很大时会产生失真;

Phong模型是简单的局部光照模型,对物体间相互反射及折射、阴影处理欠缺等。

2)浓淡图绘制算法,通过前面介绍的Gouraud模型、Phong光照模型可计算物体表面上点的颜色值。

为了显示形体的三维真实感效果图,下面介绍多面体浓淡图的如何绘制。

由于空间三维物体是连续点集。

显然直接计算点的颜色将无法确定计算采样点的位置和数目。

事实上,我们仅能看到屏幕所能显示的区域。

如果能够求得屏幕上每一个象素点所对应的物体上点的颜色,这样就可绘制整个图形。

为了得到屏幕上某象素点所对应的物体上点的颜色,假定作经过该象素点的一条射线,射线平行于观察视线,则射线与多面体物体可能有多个交点。

如果物体不是透明的,则处于最前面的交点的颜色即为所求,如右图所示。

最简单的算法Z缓冲区(ZBuffer)算法,为计算物体表面上对应象素点的颜色,用帧缓存器存放每个象素颜色(按光照模型计算),用深度缓存空间来存放每个象素深度值Z,称为Z缓冲器(即ZBuffer)。

A)Z缓冲器(Z-Buffer)算法,绘制时思路:

1)Z缓冲器中每个单元值是对应象素点所反映物体对象的z坐标值,初值取成z的极小值。

2)将待处理的景物表面上的采样点变换到图像空间,计算其深度值z。

3)并根据采样点在屏幕上的投影位置,将其z值与已存贮在z缓存器中相应象素处的原可见点的深度值进行比较。

4)如果该采样点位于Z缓存器所记录的可见点之前,则将该采样点处的表面颜色填入帧缓存器相应象素,同时用其深度值更新z缓存器存贮的深度值。

否则,不写入也不更新。

Z-Buffer算法()for(i=0,1,m)/m:

窗口水平方向象素数目for(j=1,n)/n:

窗口垂直方向象素数目用背景色初始化帧缓存CB:

CB(i,j)=背景色;

用最小Z值初始化深度缓存:

ZB(i,j)=Zmin;

for(每一个多边形p)/算法1将该多边形进行投影变换;

扫描转换该多边形在视平面上的投影多边形;

for(该多边形所覆盖的每个象素(i,j)计算该多边形在该象素的深度值Zi,j;

if(Zi,jZB(i,j))ZB(i,j)Zi,j;

计算该多边形在该象素的颜色值Ci,j;

CB(i,j)=Ci,j;

/forp/注:

对投影多边形进行裁剪得到有效区域,可加快显示速度,Z-Buffer算法在象素级上以近物取代远物。

形体在屏幕上的出现顺序是无关紧要的。

这种取代方法实现起来远比总体排序灵活简单,有利于硬件实现。

然而Z-Buffer算法存在缺点:

占用空间大,没有利用图形的相关性与连续性。

Z-Buffer算法以算法简单著称,但也以占空间大而闻名。

Z-Buffer算法需要开一个与图象大小相等的缓存数组ZB,可一次性显示。

当然,也可只用一个深度缓存变量zb,但需逐点计算显示,显示效率低下。

B)扫描线Z-buffer算法,如何减少Z-buffer的缓冲内存,并利用相关性提高点与多边形的包含性测试和深度计算速度,就得到扫描线Z-buffer算法。

从最上扫描线开始向下对每条扫描线作处理。

对每条扫描线来说,把相应的帧缓冲器单元置成底色,在z缓冲器中存放z的极小值。

与Zbuffer算法相比,扫描线Zbuffer将整个绘图窗口内的消隐问题分解到一条条扫描线上解决,使所需的Z缓冲器大大减少。

对每个多边形检查它在oxy平面上的投影和当前扫描线是否相交(如右上图),若不相交则跳过该多边形;

若相交则扫描线和多边形边界交点一定成对出现,对每对交点间的象素计算多边形所在平面对应点的深度(即z值),并和z缓冲器中相应深度值比较。

对所有多边形和帧缓冲器每一行都作上述处理。

利用活性多边形Y、活化边表处理相邻扫描线和象素的连贯性,提高算法效率。

C)区间扫描线算法,扫描线z缓冲器算法将消隐问题分散到每一条扫描线上去解决,这样问题变得较简单了。

但在每个象素处计算多边形z值的工作量仍是很大。

实际上每条扫描线被各多边形边界在oxy平面上的投影分割成为数不多的区间(如右图),每一个区间上只显示一个面。

因此,只要在区间上任一点处,找出在该处z值最大的一个面,这个区间上的每个象素就用这个面的颜色来显示。

这就是所谓区间扫描线算法。

扫描面Oxz,区间扫描线算法使得在一条扫描线上每个区间只计算一次深度值,不需要Z缓冲器。

它是把当前扫描线与各多边形在投影平面的投影的交点进行排序后,使扫描线分为若干子区间。

因此,只要在该区间任一点处找出在该处z值最大的一个面,这个区间上的每一个象素就用这个面的颜色来显示。

当然,现在计算机的硬件发展很快,缓存数组所耗空间已不是障碍。

Phong模型的区间扫描线绘制算法示例,1,10三维形体的真实感显示,1.简单效果的浓淡图生成2.一般性效果图形生成3.真实感效果图生成1)全局关照模型2)光线跟踪3)辐射度算法4.纹理映射,1)整体光照明模型及真实感显示,简单光照明模型和局部光照明模型,虽然可以产生物体的真实感图象,但它们都只是处理光源直接照射物体表面的光强计算,不能很好的模拟光的折射、反射和阴影等,也不能用来表示物体间的相互光照明影响。

而基于简单光照明模型的光透射模型,虽然可以模拟光的折射,但是这种折射的计算范围很小,不能很好的模拟多个透明体之间的复杂光照明现象。

对于上述的这些问题,就必须要有一个更精确的光照明模型。

整体光照明模型就是这样的一种模型,它是相对于局部光照明模型而言的。

在现有的整体光照明模型中,主要有光线跟踪和辐射度两种绘制方法。

2)光线跟踪算法的基本思想,光线跟踪算法是真实感图形学中的主要算法之一,算法具有原理简单、实现方便和能够生成各种逼真的视觉效果等优点。

在真实感图形学对光线跟踪算法的研究中,Whitted提出了第一个整体光照模型,并给出一般性光线跟踪算法的范例,综合考虑了光的反射、折射透射、阴影等。

光线跟综过程示意图,简单光透射模型把透射光分为理想漫透射和规则透射。

由光源发出的光称为直接光,物体对直接光的反射或折射称为直接反射和直接折射。

把物体表面间对光的反射和折射称为间接光,间接反射,间接折射。

这是光线在物体间的传播方式,是光线跟踪算法的基础。

由光源发出的光到达物体表面后,产生反射和折射,简单光照明模型和光透射模型模拟了这两种现象。

在简单光照明模型中,反射被分为理想漫反射和镜面反射光。

最基本的光线跟踪算法是跟踪镜面反射和折射。

从光源

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

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1