真实感图形生成1教学文案.ppt
《真实感图形生成1教学文案.ppt》由会员分享,可在线阅读,更多相关《真实感图形生成1教学文案.ppt(76页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、真实感图形生成1引言引言对于场景中的物体、要得到它的真实感对于场景中的物体、要得到它的真实感图形,就要对它进行透视投影,并消除隐藏图形,就要对它进行透视投影,并消除隐藏面,然后计算可见面的光照明暗效果,最后面,然后计算可见面的光照明暗效果,最后在计算机中绘制出让观察者有身临其境感觉在计算机中绘制出让观察者有身临其境感觉的图形的图形.消隐消隐 o消隐的概念消隐的概念o消隐算法分类消隐算法分类o消隐算法消隐算法n深度缓存器算法深度缓存器算法n区间扫描线算法区间扫描线算法n深度排序算法深度排序算法n区域细分算法区域细分算法n光线投射算法光线投射算法nBSP树算法树算法n多边形区域排序算法多边形区域排
2、序算法消隐的概念消隐的概念o用计算机生成三维物体的真实图形,在用显示用计算机生成三维物体的真实图形,在用显示设备描述物体的图形时,必须把三维信息经过设备描述物体的图形时,必须把三维信息经过某种投影变换,在二维的显示表面上绘制出来。某种投影变换,在二维的显示表面上绘制出来。由于投影变换失去了由于投影变换失去了深度深度信息,往往导致图形信息,往往导致图形的二义性。的二义性。o要消除二义性,就必须在绘制时消除被遮挡的要消除二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称作消除隐藏线和隐不可见的线或面,习惯上称作消除隐藏线和隐藏面,或简称为藏面,或简称为消隐消隐。o消隐实例消隐实例 消隐实例
3、消隐实例 物体的线框图物体的线框图 经消隐处理后的图形经消隐处理后的图形消隐算法分类消隐算法分类o按其实现方式分为:按其实现方式分为:n图像空间消隐算法图像空间消隐算法图像空间图像空间(屏幕坐标系屏幕坐标系)消隐算法以屏幕像素为采样消隐算法以屏幕像素为采样单位单位,确定投影于每一个像素的可见景物表面区域,确定投影于每一个像素的可见景物表面区域,并将其颜色作为该像素的显示颜色。如深度缓冲器算并将其颜色作为该像素的显示颜色。如深度缓冲器算法、法、A A缓冲器算法、区间扫描线算法等。缓冲器算法、区间扫描线算法等。n景物空间消隐算法景物空间消隐算法直接在景物直接在景物(观察坐标系观察坐标系)中确定视点
4、不可见的中确定视点不可见的表面表面区域,并将它们表达成同原表面一致的数据结构。如区域,并将它们表达成同原表面一致的数据结构。如BSPBSP算法、多边形区域排序算法等。算法、多边形区域排序算法等。n介于二者之间的算法,如深度排序算法、区域细分介于二者之间的算法,如深度排序算法、区域细分算法、光线投射算法等。算法、光线投射算法等。n排序:各景物表面按照距离视点远近排序,排排序:各景物表面按照距离视点远近排序,排序结果用于确定消隐对象之间的遮挡关系。序结果用于确定消隐对象之间的遮挡关系。n连贯性:连贯性是指所考察的物体或视区内的连贯性:连贯性是指所考察的物体或视区内的图像局部保持不变的一种性质,用于
5、提高排序图像局部保持不变的一种性质,用于提高排序效率。效率。基本的原则基本的原则9.1 深度缓存器算法(Z-buffer)o基本原理n帧缓存:保存各像素点的颜色。nZ缓存:保存屏幕坐标系上各像素点所对应的深度值。深度缓存器算法(Z-buffer)图图9.1 深度缓存器算法的原理深度缓存器算法的原理观察方向:Z轴负向深度缓存器算法(Z-buffer)o算法步骤n初始化:把Z缓存中各(x,y)单元置为z的最小值,而帧缓存各(x,y)单元置为背景色。n在把物体表面相应的多边形扫描转换成帧缓存中的信息时,对于多边形内的每一采样点(x,y)进行处理:l计算采样点(x,y)的深度z(x,y);l如z(x,
6、y)大于Z缓存中在(x,y)处的值,则把z(x,y)存入Z缓存中的(x,y)处,再把多边形在z(x,y)处的颜色值存入帧缓存的(x,y)地址中。o如何计算采样点(x,y)的深度z(x,y)。n假定多边形的平面方程为:Ax+By+Cz+D=0。深度缓存器算法(Z-buffer)图图9.2 利用扫描线的连贯性加快深度的计算利用扫描线的连贯性加快深度的计算深度缓存器算法(Z-buffer)n扫描线上所有后继点的深度值:n当处理下一条扫描线y=y-1时,该扫描线上与多边形相交的最左边(x最小)交点的x值可以利用上一条扫描线上的最左边的x值计算:深度缓存器算法(Z-buffer)n扫描线深度缓存器算法:
7、增加多边形表深度缓存器算法(Z-buffer)o优点n简单n便于硬件实现o缺点n占用太多的存储单元n在实现反走样、透明和半透明等效果方面有困难深度缓存器算法(Z-buffer)o避免对被遮挡区域的采样是进一步提高扫描线算法计算效率的关键。图图9.3 区间扫描线算法原理区间扫描线算法原理9.2 区间扫描线算法o算法n三张表:边表、多边形表、有效边表。n分割子区间,确定子区间上的唯一可见面。图图9.4 扫描线子区间扫描线子区间区间扫描线算法o特殊情形特殊情形n贯穿情形:为了使算法能处理贯穿情形:为了使算法能处理互相贯穿的多边形互相贯穿的多边形,扫描线上的分割点不仅应包含各多边形的边与扫描线扫描线上
8、的分割点不仅应包含各多边形的边与扫描线的交点,而且应包含这些的交点,而且应包含这些贯穿边界贯穿边界与扫描线的交点。与扫描线的交点。n循环遮挡:将多边形进行划分以消除循环遮挡。循环遮挡:将多边形进行划分以消除循环遮挡。区间扫描线算法图图9.5 多边形贯穿和循环遮挡的情形多边形贯穿和循环遮挡的情形o算法原理:算法约定距视点近的优先级高,算法原理:算法约定距视点近的优先级高,距视点远的优先级低。生成图像时,优先级距视点远的优先级低。生成图像时,优先级低的多边形先画,优先级高的多边形后画。低的多边形先画,优先级高的多边形后画。这样,后画的多边形就会将先画的多边形遮这样,后画的多边形就会将先画的多边形遮
9、挡住,从而达到消隐的效果。挡住,从而达到消隐的效果。o算法的关键是多边形排序。算法的关键是多边形排序。9.3 深度排序算法(画家算法)o算法原理:考察投影平面上的一块区域,如算法原理:考察投影平面上的一块区域,如果可以很果可以很“容易容易”地判断覆盖该区域中的哪地判断覆盖该区域中的哪个或哪些多边形是可见的,则可按这些多边个或哪些多边形是可见的,则可按这些多边形的光照属性和几何位置计算确定子区域内形的光照属性和几何位置计算确定子区域内各像素的显示颜色;否则就将这块区域细分各像素的显示颜色;否则就将这块区域细分为若干较小的区域,并把上述推断原则递归为若干较小的区域,并把上述推断原则递归地应用到每个
10、较小的区域中去。地应用到每个较小的区域中去。9.4 区域细分算法o多边形的分类图图9.6 多边形的投影与考察区域之间的关系多边形的投影与考察区域之间的关系区域细分算法o可见性测试1、所有多边形均是该区域的分离多边形,于是可直接将该区域中的所有像素点置为背景颜色。2、针对该区域,仅存在一个相交多边形,或仅存在一个被包含多边形,或仅存在一个围绕多边形。则可先将该区域中的所有像素点置为背景颜色,再将相应多边形的颜色值填入对应像素点的帧缓存中。3、针对该区域,有多于一个的相交多边形、被包含多边形或围绕多边形,则计算所有围绕的、相交的、以及被包含的多边形在该区域4个顶点处的z坐标,如果存在一个围绕多边形
11、,它的4个z坐标比其它任何多边性的z坐标都大(最靠近视点),那么,可将该区域中的所有像素点置为该多边形的颜色值。9.4 区域细分算法图图9.7 满足测试条件满足测试条件3的两个例子的两个例子9.4 区域细分算法o算法原理图图9.8 光线投射算法光线投射算法9.5 光线投射算法o算法步骤n通过视点和投影平面(显示屏幕)上的所有像素点作一入射线,形成投影线。n将任一投影线与场景中的所有多边形求交。n若有交点,则将所有交点按z值的大小进行排序,取出最近交点所属多边形的颜色;若没有交点,则取出背景的颜色。n将该射线穿过的像素点置为取出的颜色。光线投射算法oBSP(Binary Space Partit
12、ion)o算法原理图图9.9 BSP树算法原理树算法原理9.6 BSP树算法o算法原理 将多边形按深度值由小到大排序,用前面的可见多边形去切割位于其后的多边形,使得最终每一个多边形要么是完全可见的,要么是完全不可见的。9.7 多边形区域排序算法真实感图形的绘制真实感图形的绘制o消隐能反映景物间的相互遮挡关系,能够增消隐能反映景物间的相互遮挡关系,能够增强图形的深度感和层次感强图形的深度感和层次感.o如何利用计算机进行真实感图形的绘制呢如何利用计算机进行真实感图形的绘制呢?真实感图形的绘制步骤真实感图形的绘制步骤1.1.场景造型场景造型采用数学方法建立三维场景的几何描述并输入到计算机。采用数学方
13、法建立三维场景的几何描述并输入到计算机。2.2.取景变换、透视投影取景变换、透视投影将三维几何描述转换为二维透视图的内容。将三维几何描述转换为二维透视图的内容。3.3.视域裁剪、消除隐藏面视域裁剪、消除隐藏面确确定定景景物物中中的的所所以以可可见见面面,将将视视域域之之外外或或其其它它景景物物遮遮挡挡的的不可见面消除。不可见面消除。4.4.绘制真实感图形绘制真实感图形根据一定的根据一定的光照模型光照模型和和光强度光强度计算,将其转换为适合图形计算,将其转换为适合图形设备的设备的颜色颜色值,生成投影画面上每个像素的光强度,让观值,生成投影画面上每个像素的光强度,让观察者产生身临其境的感觉。察者产
14、生身临其境的感觉。基本概念基本概念p光照模型(Illumination model),也称明暗模型,主要用于物体表面某点处的光强度计算。n简单的光照模型n复杂的光照模型p光强(度):描述物体表面朝某方向辐射光的颜色,它既能表示光能大小又能表示其色彩组成的物理量。光照模型的分类光照模型的分类l简单的光照模型:简单的光照模型:仅考虑光源照射在物体表面产生仅考虑光源照射在物体表面产生的反射光,并且常假设物体表面是光滑的,所以生的反射光,并且常假设物体表面是光滑的,所以生成的图形可以模拟出不透明物体表面的明暗过渡,成的图形可以模拟出不透明物体表面的明暗过渡,具有一定的真实感。具有一定的真实感。l复杂的
15、光照模型:复杂的光照模型:除了考虑反射光外,还要考虑周除了考虑反射光外,还要考虑周围环境的光对物体表面影响、透明度、光源的位置围环境的光对物体表面影响、透明度、光源的位置和个数等,这种光照模型被称为整体光照模型,它和个数等,这种光照模型被称为整体光照模型,它能模拟出镜面影像、透明等光照效果,可以绘制更能模拟出镜面影像、透明等光照效果,可以绘制更接近自然景物的图形。接近自然景物的图形。简单的光照模型与复杂光照模型的比较简单的光照模型与复杂光照模型的比较 简单光照模型绘制效果 复杂光照模型绘制效果简单光照模型中只考虑反射光的作用。简单光照模型中只考虑反射光的作用。反射光由反射光由环境光环境光、漫反
16、射光漫反射光和和镜面反射光镜面反射光三部三部分组成。分组成。简单的光照模型简单的光照模型p特点:照射在物体上的光来自周围各个方向,特点:照射在物体上的光来自周围各个方向,又均匀地向各个方向反射。又均匀地向各个方向反射。pP点对环境光的反射强度为点对环境光的反射强度为图图1 环境光的反射环境光的反射环境光(环境光(Background Light)p一个粗糙的、无光泽的表面呈现为漫反射。一个粗糙的、无光泽的表面呈现为漫反射。p特点:光源来自一个方向,反射光均匀地射向特点:光源来自一个方向,反射光均匀地射向各个方向。各个方向。p由由Lambert余弦定理可得点余弦定理可得点P处漫反射光的强度处漫反
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 真实感 图形 生成 教学 文案
限制150内