书签 分享 收藏 举报 版权申诉 / 86
上传文档赚钱

类型课件-计算机图形学-真实感图形.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4864931
  • 上传时间:2023-01-19
  • 格式:PPT
  • 页数:86
  • 大小:1.41MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《课件-计算机图形学-真实感图形.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    课件 计算机 图形学 真实感 图形
    资源描述:

    1、第八章第八章 真实感图形真实感图形8.1 真实感图形概述真实感图形概述8.2 消隐概述消隐概述8.3 隐藏线的消除隐藏线的消除 8.3.1 平面体的消除平面体的消除 8.3.1.1 凸面体的消隐凸面体的消隐 8.3.1.2 凹面体的消隐凹面体的消隐 8.3.2 曲面体的消隐曲面体的消隐 8.4 隐藏面的消除隐藏面的消除8.5 明暗效应明暗效应8.6 颜色模型(图像处理已学)颜色模型(图像处理已学)8.7 光照高级编程(补充内容)光照高级编程(补充内容)8.8 纹理图案映射(选学内容)纹理图案映射(选学内容)8.1 真实感图形概述:真实感图形概述:一一 引入:引入:1 演示虚拟钻石.AVI 2

    2、演示光与纹理.AVI 3 问题:上面演示的图形及右面的图形 有一个共同特性:具有真实感。采用哪些技术能生成具有真实采用哪些技术能生成具有真实 感图形?感图形?二二 生成真实感图形的几大技术(本章的学习内容)生成真实感图形的几大技术(本章的学习内容)1 隐藏线的消除隐藏线的消除 (1)平面体的消隐)平面体的消隐 凸面体的消隐凸面体的消隐 凹面体的消隐凹面体的消隐 (2)曲面体的消隐)曲面体的消隐 2 隐藏面的消除隐藏面的消除 3 明暗效应明暗效应(演示光照处理演示光照处理.exe)4 颜色模型颜色模型 5 纹理图案映射(演示纹理图案映射(演示texture.m)8.2 消隐概述消隐概述1问题的提

    3、出:问题的提出:1 人眼能正确判断形体的朝向和遮挡关系:人眼能正确判断形体的朝向和遮挡关系:在现实世界中,观察不透明的物体时,我们的眼睛只能看到 朝向我们的表面,其余的表面(尽管存在)不能被看见.例如:粉笔盒2 计算机不能自动识别形体的朝向和遮挡关系:计算机不能自动识别形体的朝向和遮挡关系:用计算机生成立体图时,物体表面的(无论能否被看见)所有数据都存放在计算机中,但计算机不能自动识别形体的 朝向和遮挡关系。3 问题:问题:如果在图形的生成过程中,不进行可见与不可见的区分处理,且不可见部分不被消隐掉,物体的所有部分都将被表现出来,会造成错觉和歧义。例如:图A是不进行可见与不可见的区分处理,没有

    4、消隐的 线框图,可以有四种解释:可见,没有消隐的线框图不能表现确定的物体形状,可见,没有消隐的线框图不能表现确定的物体形状,而只有进行必要的消隐之后才可能出现准确地判断其形状。而只有进行必要的消隐之后才可能出现准确地判断其形状。俯视,小长方体在上俯视,有矩形孔仰视,小长方体在下仰视,有矩形孔图A:线框图的表达不确定 要正确画出物体的形状必须判断哪些是可见的、哪些是不可见的、并对不可见部分进行消隐处理。二二 消隐的必要性:消隐的必要性:观察者B在后A在前ZXYEOXOZ平面(一(一)消隐处理时必然遇到的问题:消隐处理时必然遇到的问题:判断前后关系判断前后关系,判断可能被遮挡的物体是哪一个判断可能

    5、被遮挡的物体是哪一个 对观察者来讲,A与B谁在前(靠近E),若在前则不可能被遮挡,若在后则有可能被遮挡。确定投影的重叠部分确定投影的重叠部分,判断被遮挡者的哪一部分应消隐判断被遮挡者的哪一部分应消隐 求各投影的交点.找出A与B重叠的部分,求交点.无重叠则无遮挡.有重叠可能有遮挡。判断某个面的朝向判断某个面的朝向,以便以便判断出某个面不可见并进行消隐。判断出某个面不可见并进行消隐。三三 常用的方法与技术常用的方法与技术 1 “最大最小试验最大最小试验”也被称为排斥试验。也被称为排斥试验。它用来快速判断空间的两个面或两个立体是否互相遮挡,无遮挡时,可以不进行包含或相交等运算,从而减少工作量,有遮挡

    6、时,再进一步判断遮挡的大小等问题。2 最大最小的含义:最大最小的含义:是指两个立体的投影A和B:X方向:A的最大值小于B的最小值,或A最小值大于B的最大值 Y方向:A的最大值小于B的最小值,或A最小值大于B的最大值 则A与B必定不重叠(无遮挡)。(二)技术(二)技术1:最大最小试验(判断重叠的方法)最大最小试验(判断重叠的方法)ABX方向:A最大值小于B的最小值的图例 3 判断两个多边形是否重叠的方法判断两个多边形是否重叠的方法:(利用最小投影矩形检验利用最小投影矩形检验)(1)确定多边形确定多边形A,B各自的各自的“最小投影矩形最小投影矩形”(最小投影矩形:能够包含平面多边形投影的最小矩形)

    7、YmaxYminXminXmaxXY 如果两个平面多边形的最小投影矩形不发生重叠,则这两个平面多边形必定不会重叠。两平面多边形必定不重叠条件:满足下列条件中的任何一个。A在左 XAmax Xbmin A在右 XAmin XBmax A在下 YAmax YBmin A在上 YAmin YBmax ABABABAB(2)根据两个最小投影矩形相交与否来迅速判断)根据两个最小投影矩形相交与否来迅速判断A,B是否重叠。是否重叠。(3)若两个投影矩形重叠若两个投影矩形重叠,需根据两个多边形是否重叠需根据两个多边形是否重叠,判断遮挡关系:判断遮挡关系:若两个最小投影矩形重叠,不能断定两个多边形重叠,如下图。

    8、需进一步判断两个多边形是否重叠,只有当多边形在投影面上发生相互重叠时,才有可能在空间发生相互遮挡的关系。例:投影矩形重叠多边形不重叠实例投影矩形重叠多边形不重叠实例投影矩形重叠多边形也重叠实例投影矩形重叠多边形也重叠实例 (1)“最小盒子”的含义:包容空间立体且体积是最小的长方体,(2)立体A必定不遮挡B的条件为:XAmax XBmin A在左 XAmin XBmax A在右 ZAmax ZBmin A在下 ZAmin ZBmax A在上 YAmax YBmin A在后 以上5个条件只要有1个满足,则A肯定不会遮挡B4 判断两个立体是否重叠的方法判断两个立体是否重叠的方法:(利用利用“最小盒子

    9、最小盒子”来检验判断来检验判断)以上5个条件全都不满足,则A是否遮挡B,还需做进一步的计算和判断。5 结论:结论:最大最小试验可以快速判断互不遮挡的立体或多边形,避免为了消隐进行的计算(例:求交点)和判断,从而加快了计算的速度。(三)技术(三)技术2:包含性检验(判断是否重叠)包含性检验(判断是否重叠)问题:如何判断点和一个多边形是否重叠?要确切地知道一个点和一个平面多边形的相对位置关系,就应判断点的投影是否包含在平面多边形的投影之中。如果被包含,就要比较点与该面的前后关系,最终判断它们的遮挡关系。检测的方法:设空间一平面多边形ABCDE在投影面上的投影是ABCDE,空间中的另一点P在投影面上

    10、的投影为P0。使用以下二种方法都可以判断P是否包含于ABCDE。APBCDEAPBCDE1P分别与ABCDE连线2 令1 APB 2 BPC 3 CPD 4 DPE 5 EPA方法一:方法一:夹角之和检验法夹角之和检验法之外。在则:若051EDCBAPii之内。在则:251EDCBAPii方法二:方法二:交点数检验法交点数检验法 AP BCDEAP BCDE(图A)(图B)由 P 向任意方向作一条射线,求射线与多边形的交点数。交点为偶数则 P在多边形之外,交点为奇数则 P在多边形之内。通常,射线作成与坐标轴平行,例如平行于 Y 轴。P123P1234P12345P12345计不计342312计

    11、不计2312计不计45342312计不计45342312问题:由问题:由P向下作射线,如上图所示向下作射线,如上图所示,有多个交点(奇异点)有多个交点(奇异点),如何计数?如何计数?方法:左闭右开法。方法:左闭右开法。1 当多边形一条边的两端点的x坐标值均小于或等于P射线 的Xp的坐标时,不作求交运算,即不计入交点数。2 线段两端点的x坐标值只要大于P射线 的Xp的坐标值,要作求交运算。zxySACBE 观察者(四)技术(四)技术3:求平面的法矢和方程(判断朝向)求平面的法矢和方程(判断朝向)1 问题点:问题点:如何判断一个凸多面体的某个面可见与否?设想:利用其外法线矢量?2 外法线矢量外法线

    12、矢量:凸多面体的各个平面有其法线,规定其方向为,由物体内指向外部,称为外法线矢量。观察者位置为E 投影线(视轴)平行于Y轴,故:外法线与Y轴(视轴)的夹角为根据的大小可以判断外法线代表的平面的可见性。有立体ABCS,共4个面1 00900,则可见(cos0),如SBC、SAB 2 =900,则法线代表的平面在XOZ平面上有积聚性 (cos=0)为一条线。如ABC投影为AC线段。3 9001800,则不可见(cos 0)如SAC。zxySACBE 观察者3 利用外法线与视轴的夹角能判断可见性:利用外法线与视轴的夹角能判断可见性:4 外法矢量的求法:外法矢量的求法:已知平面(右手坐标系中)点P0(

    13、X0 Y0Z0),P1(X1 Y1Z1),P2(X2 Y2Z2)为凸多面体上任意的三个按逆时针方向所取的点.有矢量 P0P1 ,P0P2,叉积N=P0P1 P0 P2 为平面的外法矢量NP0P1P2NP0P1P2 P0P1=(x1x0)i+(y1y0)j+(z1z0)k P0P2=(x2x0)i+(y2y0)j+(z2z0)kCkBjAiZZYYXXZZYYXXkjiPPPPN020202010101201002020101ZZYYZZYYA02020101XXZZXXZZB02020101YYXXYYXXC 可得夹角 cos=B/由于N 恒为正,故:cos的正负可以由B来确定NB0 则 该平

    14、面可见B=0 则 该平面具有积聚性。(化为一条线)B0,则YmYp,P在后,被遮挡若t0,则Ym0 因此 P被遮挡,不显示点P8.3 隐藏线的消除隐藏线的消除 8.3.1 平面体的消除平面体的消除 8.3.1.1 凸面体的消隐凸面体的消隐 8.3.1.2 凹面体的消隐凹面体的消隐 8.3.2 曲面体的消隐曲面体的消隐 8.3.1.1 凸面体的消隐方法凸面体的消隐方法一一 立体表面法线与可见性的关系:立体表面法线与可见性的关系:zxySACBE 观察者1 设平面外法线与设平面外法线与y轴的夹角为轴的夹角为,可根据,可根据的大小判断可见性:的大小判断可见性:1 00900,则可见(cos0)2 =

    15、900,则法线代表的平面在XOZ平面上有积聚性3 9001800,则不可见(cos 0)而 cos=B/|N|由于N 恒为正,故:2 cos的正负可以由的正负可以由B来确定,仅计算来确定,仅计算B的值,即可判断可见性的值,即可判断可见性。02020101XXZZXXZZBB0时,可见BZ缓冲区在(x,y)处的值)把Z(x,y)存入缓冲区中(x,y)处;同时把该像素的亮度值或颜色值存入祯缓冲器的(x,y)处;2该算法优点:该算法优点:在像素级上以近物取代远物,实现起来比总体排序灵活 简单,有利于硬件实现。3该算法缺点:该算法缺点:Z缓冲区需要较多的存储空间,例如:当象素数为 500500时,需2

    16、50k个存储空间,而深度值一般用 浮点数表示,每个数占4个字节,共需1M。8.4.3 扫描线算法:扫描线算法:ACBDa一一 基本思想:基本思想:用两个缓冲区实现 for(每条扫描线)对扫描线a而言:将a上的所有像素的颜色值置成背景色 将a上的所有像素的深度值置成最小Z值 for(各个多边形)求与第i个多边形的相交区间AB for(AB上的所有像素)if(A像素的Z值buffer里相同位置的Z值)用ZA代替buffer里的Z值;同时将A像素的颜色值代替buffer里相同位置的颜色值;二二 基本步骤:基本步骤:1 把物体各面投影到屏幕上;2 计算扫描线与物体各投影面的相交区间;3 当两个区间在深

    17、度方向上重叠时,采用深度测试确定可见部分。三三 算法流程:算法流程:for(每条扫描线)扫描线祯缓冲器置成背景色;扫描线Z缓冲区置成最小Z值 for(各个多边形)求出该多边形与当前扫描线的相交区间 for(区间所含的所有像素)if(多边形在该处的Z值buffer里相同位置的Z值)用多边形在该处的代替buffer里的Z值;用多边形在该处的颜色值代替buffer里相同位置的颜色值;8.5 明暗效应明暗效应8.5.1 引入:引入:一一 提出问题:提出问题:1 讲台各个面的明暗程度不同,它与哪些因素有关?答:与讲台的表面材质和光照有关。2 演示 光照处理.exe 3 计算机屏幕显示真实感图形需作哪些工

    18、作?答:消隐处理 (已学)明暗处理 (浓淡处理)4 右图所示图形是经过消隐处理和 浓淡处理后生成的真实感图形。5 问题:如何实现这种明暗处理?二二 解决方法:解决方法:建立一个数学模型(光照模型),并用这个光照模型 计算出三维形体表面每个点的明暗度。三三 概述本节内容:概述本节内容:1 什么叫光照模型?什么叫光照模型?2 怎样建立光照模型?怎样建立光照模型?3 明暗处理的方法?明暗处理的方法?8.5.2 光照模型光照模型一一 什么叫光照模型?什么叫光照模型?1 定义:定义:根据光学物理的有关定律,计算物体表面各点 投射到观察者眼中的光线的光亮度和色彩组成 的数学公式。2 怎样理解光照模型?怎样

    19、理解光照模型?光照模型就是一个数学模型,我们可以用这个 数学模型求出物体表面每一点的亮度,因此它 也叫浓淡模型。二二 什么叫局部光照模型?什么叫局部光照模型?1 问题点:问题点:(1)自然界中真实光线对物体表面亮度的影响很难精确模拟。怎么办?(2)方法:1)只能逼近实际条件,与实际条件越接近,所得的光照 模型越复杂,计算量越大,逼真性越强。2)一般情况下,不考虑太复杂,只从三个方面考虑:环境光的漫反射、入射光的漫反射、镜面反射。环境光的漫反射、入射光的漫反射、镜面反射。3)若能建成这3种反射光的数学公式,就能较好的模拟出 光照效果和镜面高光,得到真实感图形,且计算简单。2 什么叫局部光照模型?

    20、什么叫局部光照模型?(1)当我们只考虑三种反射光,并建立每种反射光的数学模型,再将它们和在一起得到的就是局部光照模型。(2)定义:定义:一般情况下,只考虑光源的漫反射一般情况下,只考虑光源的漫反射(环境光漫反射环境光漫反射 入射光漫反射入射光漫反射)和镜面反射,此时得到的光照模型叫和镜面反射,此时得到的光照模型叫 局部光照模型。局部光照模型。(3)局部光照模型优点:局部模型是一个经验模型,但能在较短时间内获得 具有一定真实感的图形,能较好模拟光照效果和镜 面高光,且计算简单,所涉及参数量易于获得,在实际中被广泛应用和推广,是目前三维图形真实在实际中被广泛应用和推广,是目前三维图形真实 感处理技

    21、术采用的主要方法感处理技术采用的主要方法 8.5.3 怎样建立局部光照模型?怎样建立局部光照模型?1 建立环境光的漫反射的数学模型:建立环境光的漫反射的数学模型:Ia:环境光的光能强度。环境光在空间中近似均匀分布,即在任何位置、任何 方向上强度一样,记为Ia Ka:环境光反射系数。环境光反射系数在分布均匀的环境光照射下,不同物 体表面所呈现的亮度未必相同,因为它们的环境光反 射系数不同。E1:物体表面所呈现的亮度 物体表面上的一点在接受到环境光的照明而反射的光能aaKIE12 建立入射光的漫反射数学模型:建立入射光的漫反射数学模型:cos2ddKIEE2:物体表面上的一点接受到入射光的照明后反

    22、射的光强 Id:由点光源发射出的入射光的光强Kd:入射光的漫反射系数(0Kd1)其值由物体的表面材质决定 入射光与表面上点的法向量之间的夹角N光源3 建立镜面反射光数学模型:建立镜面反射光数学模型:ndWIEcos),(3),(WE3:镜面反射光的光强Id :入射光的光强物体表面的反射率,它是入射角 和光波长 的函数n为一整数,一般为12000视线与反射光的夹角N视线光源4 建立单一光源的局部光照模型:建立单一光源的局部光照模型:321EEEEaaKI cosddKIndWIcos),(8.5.4 明暗处理方法明暗处理方法一 引入:从光照模型可看出,在给定条件下(入射光方向等条件),只要知道物

    23、体表面某一点的法线,就可算出该点的亮 度,因此进行明暗处理的关键:求表面某一点的法线进行明暗处理的关键:求表面某一点的法线。学习三种通过求法线进行明暗处理的方法。N视线光源二二 Flat 明暗处理法:明暗处理法:1 问题:问题:(1)对于平面多面体)对于平面多面体(例:长方体):例:长方体):因为同一面上各个点的法矢量相同,则每个面上所有点的亮度相同。所以对于每个面求出一个点的外法 矢量就等于求出 该面上所有点 的外法矢量,再利用光照模型 就能求出每个点的亮度 (2)对于表面是弯曲的形体:)对于表面是弯曲的形体:每个点的法矢量不同,需求出曲面上 每一点的法向量,再用光照模型求出 每一点的亮度

    24、问题:问题:计算量太大,如何提高速度?计算量太大,如何提高速度?2 解决方法:解决方法:(1)用右图所示的平面多边形逼近弯曲 的表面形体.(2)对每个平面多边形而言:由于每个面都是平面,同一面上任 一点法线都一样,则同一面上只求 一点法线即可,再用光照模型可求 出每个多边形的亮度。该方法叫Flat 明暗处理法。3 Flat 明暗处理法缺点:明暗处理法缺点:当用较少的平面多面体逼近曲面体时,相邻多边形的边界上所感受到的亮度 超过实际值,使本来具有相同亮度的 区域看上去是明暗不同的区域,即产生马赫带效应。4 改进方法:改进方法:(1)哥罗德(gourand)明暗处理法 对各个多边形的顶点的亮度进行

    25、插值,求出多边形内各点的亮度。(2)冯(phone)明暗处理法:对各个多边形的顶点的法矢量进行插值,求出多边形内各点的法矢量,从而求出 各点的亮度。三三 哥罗德(哥罗德(gourand)明暗处理法:明暗处理法:Step1:计算每个多边形顶点的平均单位法矢量。方法:顶点V的法矢量为共享V点的四个面的法矢量 的平均,各个面的法矢量可用相邻两边向量 的外积求得。Nv(N1+N2+N3+N4)/4N1N2N4N3NvVStep2:对每个顶点用光照模型求出其亮度。对每个顶点用光照模型求出其亮度。Step3:对多边形顶点的亮度进行双线性插值对多边形顶点的亮度进行双线性插值 求出多边形上所有点的亮度。求出多

    26、边形上所有点的亮度。扫描线stpABCCCBsBBCBCssIyyyyIyyyyICCAtAACACttIyyyyIyyyyItstspsstptpIxxxxIxxxxIststxpxpxxIIII,1,BIAICI表示亮度哥罗德(哥罗德(gourand)明暗处理法优点:明暗处理法优点:算法简单,计算量小,解决了两个多边形之间不连续过渡,以及多边形内亮度单一的问题。哥罗德(哥罗德(gourand)明暗处理法缺点:明暗处理法缺点:线性插值会造成表面上出现过亮或过暗的条纹,即马赫带效应没有完全消除。解决方法:解决方法:phone明暗处理法明暗处理法四四 冯(冯(phong)明暗处理法)明暗处理法N

    27、sNtNcNpNaNbStep1:计算每个多边形顶点处的平均单位法矢量Step2:用双线性插值方法求出多边形内部各点的法矢量CCBsBBCBCssNyyyyNyyyyNCCAtAACACttNyyyyNyyyyNtstspsstptpNxxxxNxxxxNStep3:用光照模型求出多边形内各点的亮度 数字图像 穴埋后polygon 三维表面模型 用冯(用冯(phong)明暗处理法进行明暗处理的实例:)明暗处理法进行明暗处理的实例:优点:结果精确,真实感强优点:结果精确,真实感强缺点:计算量大缺点:计算量大8.7 光照高级编程光照高级编程(补充内容)(补充内容)学习内容:学习内容:了解了解Ope

    28、nGL如何模拟显示的光照效果如何模拟显示的光照效果定义期望的光源和光照模型定义期望的光源和光照模型定义被照物体的材质定义被照物体的材质8.7.1 真实世界与真实世界与OpenGL中的光照中的光照 一一 真实世界中的光照:真实世界中的光照:例如:阳光普照的晴天,大海宛如蓝宝石 乌云密布的阴天,大海灰蒙蒙一片二二 OpenGL中的光照:中的光照:演示程序:无光照的球面:二维的圆盘有光照的球面:显现三维效果三三 光照分量:光照分量:OpenGL对光照效果的计算由四个独立的部分叠加而成。即:射光、环境光、漫反射光、镜面光。四四 材质颜色:材质颜色:OpenGL中近似认为:材质的颜色由反射光中的红、绿、

    29、蓝3色所占的百分比决定。8.7.2 向场景中加入光照的步骤向场景中加入光照的步骤 用实例 长方体表面图(求法线加光照)说明:1 定义所有物体每个顶点的法向量方向2 建立、选择并放置一个或多个光源3 建立并选择一个光照模型4 定义场景中物体的材质8.7.3 创建光源创建光源一一 函数形式:函数形式:void glLightifv(Glenum light,Glenum pname,TYPE param);例:Glfloat light_ambient=0.0,0.0,0.0,1.0;glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient);light:光源的标识

    30、。例:GL_LIGHT0GL_LIGHT7 GL_LIGHTi:第i号光源pname:需设置的属性。(环境光的设置)param:代表需要给pname代表的属性设置的值。二二 glLight*()的的pname参数及其默认值参数及其默认值 参数名称 默认值 说明GL_AMBIENT0,0,0,1RGBA模式的环境光GL_DIFFUSE1,1,1,1RGBA模式的漫反射光GL_SPECULAR1,1,1,1RGBA模式的镜面光GL_POSITION1,0,1,0光源位置齐次坐标(x,y,z,w)上表中GL_DIFFUSE、GL_SPECULAR的默认值只对GL_LIGHT0有效,对于其它的光源,默

    31、认值都是(0.0,0.0,0.0,1.0)三三 颜色颜色 例:设置环境光为蓝色:Glfloat light_ambient=0.0,0.0,1.0,1.0;glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient);设置环境光为白色:Glfloat light_ambient=1.0,1.0,1.0,1.0;glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient);8.7.4 启用光照启用光照一一 在在OpenGL中需要显式地启用或取消光照计算。中需要显式地启用或取消光照计算。启用光照命令:glEnable(GL_LIGHTIN

    32、G);取消光照命令:glDisable(GL_LIGHTING);二二 设置了光源后,必须显式打开,打开语句:设置了光源后,必须显式打开,打开语句:glEnable(GL_LIGHT0);8.7.5 定义材质特性定义材质特性一一 函数形式:函数形式:void glMaterialifv(Glenum face,Glenum pname,TYPE param);例:Glfloat mat_emission=0.3,0.2,0.2,0.0;glMaterialfv(GL_FRONT,GL_EMISSION,mat_emission);Face:代表材质应该贴在哪个表面Pname:代表材质特性Par

    33、am:代表需要给pname代表的属性设置的值。二二 glMaterial*()的的pname参数及其默认值参数及其默认值 参数名称 默认值 说明GL_AMBIENT0.2,0.2,0.2,1.0材料环境光反射色GL_DIFFUSE0.8,0.8,0.8,1.0材料漫反射光反射色GL_SPECULAR0.0,0.0,0.0,1.0材料镜面光反射色GL_EMISSION0.0,0.0,0.0,1.0材料发射光色三三 演示程序:材质设置演示程序:材质设置8.8 纹理图案映射(选学)纹理图案映射(选学)一一 纹理图案映射实例:纹理图案映射实例:实例1:演示程序:texture.m 实例2:演示程序:地

    34、球图 实例3:数字图像 polygon 三维表面模型 二二 问题:做纹理图案映射实际意义?用途?实现方法?问题:做纹理图案映射实际意义?用途?实现方法?3纹理图案映射的用途:纹理图案映射的用途:1 在计算机里生成一个陶瓷艺术品的三维实体模型在计算机里生成一个陶瓷艺术品的三维实体模型(表面无图案表面无图案)想看看该表面上贴上图案的三维效果!想看看该表面上贴上图案的三维效果!方法:可将几幅数字图像映射到该艺术品的表面,并在计算机 上同时显示出来(可旋转,从任意视角观察),比较其三 维显示效果,让客户选择,再做定型的艺术品。2 用于产品的包装盒设计:用于产品的包装盒设计:将多幅图像分别映射到包装盒上,并同时显示出来,比较效果,决定外包装图案 区域细分算法(区域采样算法)区域细分算法(区域采样算法)一一 基本思想:基本思想:如上图所示,把物体投影到全屏幕窗口上 递归分割窗口,直到窗口内目标足够简单,可以直接显示为止。二 步骤:1 如上图所示把初始窗口取为边界平行于屏幕坐标系的矩形 2 若窗口内没有物体,按背景色显示 若窗口内只有一个面,把该面显示出来 否则窗口内含有两个以上的面,把窗口等分成四个小窗口,对每个小窗口作同样处理,这样反复进行下去。3 如果到某个时刻,窗口仅有像素那么大,而窗口内仍有两个 以上的面,不必再分割,取窗口内最近的可见面的颜色。有两个重叠面,需要再等分成四个小窗口

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:课件-计算机图形学-真实感图形.ppt
    链接地址:https://www.163wenku.com/p-4864931.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库