广工数媒计算机图形学之10真实感图形绘制.ppt_第1页
广工数媒计算机图形学之10真实感图形绘制.ppt_第2页
广工数媒计算机图形学之10真实感图形绘制.ppt_第3页
广工数媒计算机图形学之10真实感图形绘制.ppt_第4页
广工数媒计算机图形学之10真实感图形绘制.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、真实的图形处理。 现实世界中可见的不同颜色是来自一个或多个光源的光与物体材质交互的结果。 基于三维建模技术,将材质添加到模型中来构建模拟自然界照明环境的照明模型,是生成真实图形的关键技术。 真实图形渲染是指通过综合利用数学、物理学、校正机、心理学等知识,在校正机输出设备上渲染假的、真实的图形。 真实图形绘制中的两个基本概念:光强度校正器图形学中描绘朝物体表面所在方向发射光的颜色是表示光能大小和颜色组成两者的物理量。 照明模型被用于校正在物体表面上的采样点处的光强度的数学模型。 照明模型分为简单照明模型和整体照明模型的简单照明模型,是仅考虑光源照射到物体表面的反射光的照明模型。 整体照明模型综合

2、考虑反射光环境光物体透明度材质光源个数位置等而构筑的照明模型。 计算机完成3d场景的真实图形绘制,有四个基本步骤。 1)3d场景的几何建模;2 )三维几何变换;3 )消隐过程;4 )根据一定的照明模型,校正场景中每个点的光强度,完成真实的图形绘制。 照片与真实图形的比较、照明意义的对比,只给予一个三维对象一定的颜色,没有照明的模拟,人们就能看到没有立体感的二维图形。 光的意义对比,光的基本知识,物体表面可以吸收、反射或透射照射的光。 吸收的光转换为热能,不影响物体表面的可见性。 它的侑光被反射透过,在物体表面“发光”。 反射和透射的光强、颜色不同,观察者对物体表面的性质有不同的感觉。 光能被物

3、体表面完全吸收,光不被人眼反射到该物体表面,人就看不到该物体。 如果光中的某个波长的光(由光的波长决定光的颜色)完全被吸收,那么人就会看到物体表面的颜色缺少被吸收的色光。光照射对象表面产生的现象复杂,不仅与光源的性质、形状、数量、位置,还与物体的几何形状、光学性质、表面纹理等属性有关,同时与人眼的结构和人的心理因素有关。 校准器为了模拟自然环境并产生逼真效果图形,有必要对光照亮被摄物体的物理过程进行分析,以创建数学,即照明模型。 软件呈现过程是基本上使用数学模型校正场景中每个表面的亮度值和颜色值并显示它们的过程。照明的基本知识、光源对照明效果的影响非常大,常见的光源是以点光源球状发光方式在空间

4、中朝向它的所有物体表面都被照明。 聚光灯产生圆锥体或矩形锥体的照射区域,照射区域以外的物体不受影响的平行光源产生圆筒形或棱柱形的照射区域,不影响照射区域以外的物体,在聚光源、平行光源、点光源、照明的基本知识、现实环境中,光照射到物体表面时,物体对光反射, 根据产生透射(对透明物体)、散射(与表面光滑度有关)作用的实用要求,在综合考虑真实性和校正效率的情况下建立数学模型时,通常会忽略几个次要因素,建立仅考虑环境反射光的简单照明模型。 照明的基本知识,照明的基本知识简单照明模型,简单照明模型的光源是点光源,物体是不透明物体,表面光滑,即透射光和散射光几乎为零,忽略。 简单照明模型只考虑反射光的作用

5、。 反射光由环境反射光、漫反射(散射)光、镜面反射光三部分构成。照明的基本知识是简单的照明模型,而环境反射光是在环境中的其他物体的表面上多次反射光源光线,从而不能识别其方向的光。 环境光效果通常被简化,以便所有方向的光强度都相等。 也就是说,环境光朝向物体表面时,在所有方向均匀发散。 如果只考虑环境光对一个物体的影响,则该物体所能见到的光的强度都相等,也就是说没有明暗差异,只考虑环境光渲染后的效果,用Ie表示环境光的光强度,Ia :环境光亮度Ka :物体表面的环境光反射系数。 照明的基本知识是一个简单的照明模型,第二,漫反射光是指在物体的表面上产生特定光源并在空间的所有方向上均匀地反射的光。

6、环境反射光是全局漫反射光效果的近似。 照明的基本知识是简单的照明模型,漫反射光的强度与观察点的位置无关,入射光的光强度、入射角度和物体表面的材质有关。 即,无论眼睛在哪里,散射光总是看起来一样明亮。 式中:Ip是入射光的光强。 Kd是漫反射系数即入射角,漫反射光的强度在入射光的方向与表面法线矢量的方向一致时,即漫反射光最强,产生高亮。 照明的基本知识简单照明模型,漫反射系数对漫反射效果的影响:环境入射光的光强度,入射角相等时,漫反射系数kd在0到1之间的不同材质球面对漫反射的效果。 照明的基本知识是一个简单的照明模型,第三,当人们观察一个光源照射的光滑物体的表面时,在接近镜面反射角的一个光线会

7、聚区域内,入射光的全部或大部分成为反射光,称为镜面反射。 中的组合图层性质变更选项。 在理论上的绝对镜面中,形成的高光区域只能看到反射光的方向。 也就是说,反白区域是一个点。 但是自然界没有绝对的镜面,物体表面的微细凹凸使镜面反射光分布在反射方向的周围,形成反射光锥。 照明的基本知识是简单的照明模型,因材料不同,有不同的镜面反射系数。有光泽的金属和塑料表面有很高的镜面反射效果,粉笔和地毯表面几乎没有镜面反射。 根据加工精度的不同,物体表面的光滑度也不同,物体表面的镜面反射收敛系数也不同,对镜面反射的效果也有影响。 照明的基本知识简单照明模型,镜面反射光强度:式中:Ip :入射光的亮度Ks :作

8、为镜面反射系数的镜面反射方向与视线方向所成的角ns :镜面反射光的会聚系数,与物体表面的光滑度有关,一般取值12000,照明的基本知识是简单的照明模型,是不同的镜面尺残奥镜面反射系数ks相同,物体表面越平滑,即ns值越大,高光区域的范围越小。 照明的基本知识简单照明模型,四、Phong照明模型Phong照明模型是真实图形学提出的第一个有影响的照明模型,生成的图像的真实度已经达到可接受的程度的Phong模型,使物体表面可见的任何点的亮度值与环境光、漫反射光、镜面反射光的、光源的基本知识;在存在m个光源的情况下,phong模型假定光源的基本知识;在OpenGL模拟光源的情况下,它们假定光可以分解成

9、红、绿和蓝分量。 因此,光源的特征由它发出的红、绿、蓝光的数量决定。 材料表面的特征分别由向不同方向反射的红、绿、蓝的入射光的比例决定。 定义OpenGL光源:在OpenGL照明模型中,可以单独打开或关闭场景中不同光源的光。光源特性定义了Phong照明模型中包含的环境光、漫反射光(散射光)和镜面反射光以及辐射光。 OpenGL的照明模型和实现,所谓的发光光取决于材料的性质,不受任何光源的影响。 【注意】在整个场景中,发出的光不会成为多馀的光。 即,发出的光只影响发光体自身的光,不影响相同场景内的其他物体的光。OpenGL的照明模型和实现、OpenGL的照明模型和实现、OpenGL的照明模型和实

10、现、OpenGL中,向场景添加照明通常需要的步骤:定义场景中物体的每个顶点的法线向量。 OpenGL需要使用这些法线向量来确定每个顶点从每个光源接收的光线的数量。 OpenGL实体绘制函数(如glSolidSphere () )完成了顶点法向量定义。 设置光源特性以完成一个或多个光源的创建、放置和启用。 对于OpenGL照明模型和实现,对于OpenGL,通常需要选择向场景添加照明的步骤:照明模型。 设置函数glLightModel ()的残奥参数以确定全局照明和视点的有效位置(局部或无限远),并创建照明模型。 定义场景中对象的材质特性。 注:有些照明残奥表具有默认值,您可以不设置。 OpenG

11、L照明模型和实现创建光源,OpenGL为点光源设置提供多个函数。 光源的各种属性设置包括:void glLightif(Glenum light,Glenum pname,TYPE param ); 非向量版本、音量亮度(绿光、绿色名称、类型*参数); 矢量版本、OpenGL照明模型和实现光源、残奥仪表说明: light:指定进行取符号常数GL_LIGHT0、GL_LIGHT1、GL_LIGHT7的值的残奥仪表设定的光源。 param:表示pname残奥仪表设置的值。 对于向量版本,指一系列属性阵列,如光强度,阵列中的数字分别对应于r、g、b和a强度,就像光源位置一样,阵列中的数字分别对应于x

12、、y和z坐标。 对于向量以外的版本,需要设定的值本身。 非向量版本仅在设置单值光源属性(如聚光灯倒角)时可用。OpenGL的照明模型和安装制作光源、OpenGL的照明模型和安装制作光源、pname:指定对光源设定怎样的属性,其可能的值如下表所示(p306表10-1 )。 对于OpenGL照明模型和实现制作光源、OpenGL照明模型和实现制作光源:光源的位置和方向:光源的位置可以设定为无穷远,此时的光源称为指向性光源,所有光线都相互平行。 定向光源是用来模拟太阳光的。 非无限远的光源称为位置性光源。 光源的位置决定了场景的效果。 默认情况下,OpenGL创建的非无限远光源是点光源。 除非设置了聚

13、光灯的属性。 关于光源的位置和方向:光源的位置由残奥仪表GL_POSITION设定,其值有4个残奥仪表(x、y、z、w )。 当w为0时,将光源位于无限远、无限远的光源称为指向性光源,表示发出平行光,此时(x,y,z )指定光线的方向向量。 如果w不为0,则光源处于有限距离,(x,y,z )指定光源的位置。 这样的光源称为定位光源。 聚光光线的方向由残奥定仪表GL_SPOT_DIRECTION设定,预设为(0. 0,0.0,-1.0),即沿z轴为负方向。OpenGL的照明模型和实现关于制作光源、OpenGL的照明模型和实现、光源的颜色设定:光源的颜色取决于GL_AMBIENT、GL_DIFFU

14、SE、GL_SPECULAR的取值。 GL_AMBIENT确定环境光的强度,默认状态下的环境光强度为0。 GL_DIFFUSE定义了光源的漫反射强度。 默认情况下,光源GL_LIGHT0的漫反射光强度最强,是白色光。其他光源的漫反射光强度最弱,光强度的各成分都取值0。 GL_SPECULAR定义高光点的颜色。 通常,此值的设置与GL_DIFFUSE的设置相同,以获得更逼真的效果。中的组合图层性质变更选项。 OpenGL照明模型和实现创建光源,而OpenGL处理光源位置和方向的方式类似于处理几何体位置的方式。 也就是说,启用光源矩阵转换可以在调用控制几何体矩阵转换的glLight* ()函数来指

15、定光源的位置或方向时,根据当前模型视图矩阵转换光源的位置或方向并将其保存为视觉坐标。 因此,启用光源后,定义光源位置、方向等的属性矩阵将添加到模型视图矩阵栈中。 OpenGL照明模型和实现可以创建光源,使用GL_POSITION设置光源位置,然后使用三个残奥仪表设置聚光灯。OpenGL的光模型和实现聚光灯、聚光源、GL_SPOT_DIRECTION :设定聚光灯方向向量,即光锥的轴向。 默认值为(0.0,0.0,-1.0 ),沿z轴为负方向。 GL_SPOT_EXPONENT :设置聚光指数以控制光线的聚光程度。 GL_SPOT_CUTOFF :设定光锥半顶角、值域0.0、90.0。 如果残奥

16、仪表值为180,则禁用聚光灯。 /聚光灯。 比较光锥的半顶角值和聚光指数值变化的照明效果。 为了实现OpenGL照明模型和全局照明,OpenGL还必须设置全局照明(相当于背光)。 使用以下函数定义全局照明的属性: 语音识别名称、类型参数;以及voidgllightmodelifv (glenumpname,类型参数); 函数也有非向量版本和向量版本。 其中,残奥仪表pname指定全局照明的属性,其可能的值请参见下表,残奥仪表param指定要设置的属性值。OpenGL的照明模型和全局照明的实现、OpenGL的照明模型和全局照明的实现、残奥仪表说明: GL_LIGHT_MODEL_AMBIENT

17、:默认值为即使未设定光源,场景也有微弱的环境光,场景内的物体可见GL_LIGHT_MODEL_LOCAL_VIEWER :设置视点的位置。 缺省值是认定视点在无限远处。 GL_LIGHT_MODEL_COLOR_CONTROL :此残奥参数确定在执行纹理映射时,镜面反射颜色是否与环境颜色和漫反射颜色分离,并在纹理操作后使用。 如果不考虑纹理映射,则此残奥参数采用缺省值。 光照太阳系例行分析:一、设定光源: glLightfv(GL_LIGHT0、GL_AMBIENT、ambient ); 环境光反射系数glLightfv(GL_LIGHT0,GL_DIFFUSE,diffuse ); 漫反射系数glLightfv(GL_LIGHT0,GL _位置), 位置:/光源位置,OpenGL的照明模型和实现案例分析,二,全局照明的设定: gllightmodelfv (GL _ light _ model _ ambient,lmodel_ambient /场景的环境光成分g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论