计算机图形学chapter9

上传人:ldj****22 文档编号:42842468 上传时间:2018-06-03 格式:PDF 页数:58 大小:261.28KB
返回 下载 相关 举报
计算机图形学chapter9_第1页
第1页 / 共58页
计算机图形学chapter9_第2页
第2页 / 共58页
计算机图形学chapter9_第3页
第3页 / 共58页
计算机图形学chapter9_第4页
第4页 / 共58页
计算机图形学chapter9_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《计算机图形学chapter9》由会员分享,可在线阅读,更多相关《计算机图形学chapter9(58页珍藏版)》请在金锄头文库上搜索。

1、1第九章 真实感图形技术知 识 点:知 识 点: 光照模型, 明暗处理, 光线跟踪, 纹理等真实感技术; 教学目的:教学目的:使学生了解真实感图形生成的基 本原理和基本方法。2本章内容9.1 概述 9.2 简单光照模型 9.3 多边形表示物体的光滑明暗处理 9.4 整体光照模型 9.5 光线跟踪技术 9.6 光线跟踪的求交运算及加速方法 9.7 纹理39.1 概述 真实感图形 综合运用数学、物理学、计算机科学与其它科 学知识, 在计算机设备上生成象彩色照片那样 的真实感图形。 真实感图形生成步骤 用数学方法建立所需三维场景的几何描述, 并将它们输入计算机; 将三维几何描述转换为二维透视图; 确

2、定场景中的所有可见图(消隐); 计算场景中可见面的颜色。(本章重点)4 光强(Intensity of light)或称光亮度 既能表示光能大小又能表示其色彩组成的物理 量。一般表示为(R,G,B). 光照模型 即光强的计算公式。根据光学的有关定律计算 画面上景物表面各点投射到观察者眼中的光线 的光亮度的公式。59.2 简单光照模型9.2.1 基本原理基本原理 光照射到物体上后分解为: 反射光、透射光、 被物体表面吸收转换成热。 其中反射光和透射光的强弱决定了物体表 面的明暗程度。(参见图9.1)不同光源, 不同表面材料对 光亮度有很大影响。图9.16 简单光照模型(不考虑透射光,仅有反射光)

3、 而反射光又分成3个分量, 即: 反射光=环境反射+漫反射+镜面反射 环境反射 物体除了受特定光源照射外,还受到周围环境 来的反射光照射。该分量用Ipa表示,取常数。 漫反射 表示特定光源在景物表面的反射光中那些向空 间各方向均匀反射出去的光。漫反射可使用朗 伯定律计算。7 朗伯定律 对于一个漫反射体,表面的反射光亮度和光 源入射角的余弦成正比。对于一个漫反射体,表面的反射光亮度和光 源入射角的余弦成正比。 I=Ipdcosi I为表面反射光的光亮度; Ipd为光源垂直入射时反射光的光亮度; i为光源入射角(入射光角和表面法向夹角). (参见图9.2)8CBA图9.2 漫反射示意图9 镜面反射

4、 对某些材质的物体,在光照射下出现“高光现 象”。镜面反射的计算一般遵守反射定律。 实际上, 光滑表面镜面反射光分布于表面镜 面反射方向的周围: I=Ipscosn Ips: 镜面反射方向上镜面反射光亮度; :镜面反射方向和视线方向的夹角; n:会聚指数。 (参见图9.3)光滑平面图9.310 Phong模型 考虑反射光3个分量所建立的光照模型,表示为: I=kaIpa+kdIpdcosi+ksIpscosn ka, kd, ks分别为环境反射、漫反射和镜面反射 分量系数, 即材质系数(kd+ks=1),表示对所有 光源求和。 一般在计算机实现时, 用R、G、B三个分量计 算, 表示为:119

5、.2.2 算法实现算法实现 首先确定cosi和cos(如右图9.4所示)其中是L,N, R,V相应的单位向量, 的角平分 线的单位向量。 使用Phong模型的扫描 线绘制算法= ,图9.412算法: begin for 屏幕上每条扫描线y do begin 将数组color初始化成y扫描线的背景颜色值; for y扫描线上每个可见区间段s中的每点(x,y) do begin 设(x,y)对应的空间可视点为p; 求出p点的单位法向量,单位入射光向量,单位视线向量; 求出在P点的单位镜面反射向量;13end 显示color end end149.3 多边形表示物体的光滑明暗处理9.3.1 问题问题

6、 在计算机图形学中,光滑表面常用多边形予以 逼近和表示,使处理变得容易。如图9.5(a)的图 形常用(b)来近似。 但是, 直接使用Phong模型计算时, 不同平面块 之间存在不连续的法向量跳跃, 生成的图形失 去原有曲面光滑性, 呈多面体状。151 45 7623(b)(a) 图9.5 磨光立方体的多边形表示169.3.2 解决方法解决方法 一、 Gouraud明暗处理技术(Gouraud Shading)思想:对离散的光亮度采样作双线性插值 以获取连续的光亮度函数。 过程: a.计算出多边形顶点处的光亮度值, 作为 插值采样点; b.对多边形顶点的光亮度插值计算出多边 形内任一点的光亮度。

7、17 如图9.6,设三角形面3个顶点处光亮度为I1,I2, I3,为计算P点光亮度Ip Ia=uI1+(1-u)I2(u=av2/v1v2) Ib=vI1+(1-v)I2(v=bv3/v1v3) Ip=tIa+(1-t)Ib(t=Pb/ab) 同时,相邻两点P1,P2可用增量法计算光亮度: Ip2=Ip1+I 优缺点优缺点 效果尚好, 计算量小; 不能正确模拟高光,会产生Mach带效应(光亮度 变化率不连续的边界处呈现亮带或黑带)。18图9.6 光亮度插值及其顶点法向量计算19二、 Phong明暗处理技术(Phong Shading) 思想: 对离散的法向量采样作双线性插值, 构造一个连续的法

8、向量函数, 将这个连续的 法向量插值函数代入光亮度计算公式, 即得 到一个非线性的光亮度插值公式。 如图9.7所示, 任一点P处法向按插值方法由 各顶点处法向推出。 优点: 大大减少了马赫带效应; 产生真实的高光效果。 缺点: 由于对每一像素光亮度计算还需使用 光照模型, 故计算量大。20ab图9.7 法向双线性插值219.4 整体光照模型 Phong模型仅考虑光源直接照射在景物表面产生 的反射光能, 因而是一种局部光照模型 局部光照模型忽略了光能在环境景物之间的传 递, 很难生成高质量真实感图形。 原因: 未能考虑环境的漫射、镜面反射和规则透 射对景物表面产生的整体照明效果。 整体光照模型

9、Whitted在Phong模型中增加了环境镜面反射光 亮度Is和环境规则透射光亮度It, 从而模拟周围 环境的光透射在景物表面上产生的理想镜面反 射和规则透射现象。22 Whitted模型(如图9.8) 假设景物表面向空间某方向V辐射的光亮度I由 3部分组成: (1)由光源直接照射引起的反射光亮度Ic; (2)由V的镜面反射方向来的环境光Is投射在光 滑表面上产生的镜面反射光; (3)由V的规则透射方向来的环境光It通过透射 在透明体表面上产生的规则透射光。 Whitted模型表示公式 I=Ic+ksIs+ktIt ks: 反射系数, 0=0 ) E=(e1,e2,e3)为射线起点; D=(d

10、1,d2,d3)为射线方向; X=(x, y, z)为射线上任一点。 (1) 射线与多边形求交算法射线与多边形求交算法(如图如图9.13所示所示) 设多边形平面方程:ax+by+cz+d=0 或 N X+d=0, N=(a, b, c) 射线方程代入平面方程:N(Dt+E)+d=0 即 (ND)t+(NE)+d=0 解得:t0= -(Ne+d)/(ND) (ND0)36因此:注意:此交点为射线与平面的交点, 未必落在多 边形内,需逐边判断它是否在多边形内。 (2) 射线与长方体求交(如图9.14所示) 射线与长方体求交可转化为与长方体6个面求交。 有交时, 最少需要求射线与2个面的交点才能 确

11、定射线与长方体的交点。 无交时, 必须把射线与所有6个面求交后, 才能 确定射线与长方体无交。37图9.13 射线与多边形求交38图9.14 射线与长方体求交39(3)射线与球面求交 球心在P0(x0, y0, z0), 半径为 r 的球面方程为: (P-P0)(P-P0)=r2 射线方程代入: (Dt+E-P0)(Dt+E-P0)=r2 整理得: at2+bt+c=0 a=DD, b=2D(E-P0), c=(E-P0)(E-P0)-r2。 这样, 射线与球面交点问题转化解一元二次方程 问题。 (4) 射线与一般的二次曲面求交 设二次曲面方程: q(x,y,z)= x y z 1 Q =04

12、0其中 Q = = 把射线方程代入整理at2+bt+c=0 其中:a=DQ11D b=DQ11E+EQ11D+Q21D+DQ12 c=EQ11E+Q21E+EQ12+Q22 根据一元二次方程求解判别式可决定射线与曲 面是否有交, 若有交用求根公式计算出 t 并得到 交点。41三、光线跟踪求交加速算法 (1)包围盒技术(如图9.15) 场景分层次表示: 将场景中的所有表面按景 物组成和景物间的相对位置分层次组织成一 棵景物树。 包围盒: 指用几何形状相对简单的封闭表面 将复杂景物包裹起来, 若被跟踪的光线与包 围盒不交, 则与它所含所有景物表面均无交。 包围盒与场景分层次表示技术结合使用, 大

13、大减少求交工作量。42图9.15 景物树及其包围球43Procedure intersection (ray, scene) begin if (ray与scene的包围盒有交点) then begin if (scene是终结点) then begin ray与scene求交, 若有交,则交点置入交点表中 end else for (scene的所有儿子child_of_scene) do intersection (ray, child_of_scene) end end44(2) 景物空间分割技术 此方法是将景物所在空间分割成网格单元, 被跟 踪光线仅同它所穿越的网格单元中所含景物表面

14、进行求交测试。 它利用相邻网格单元的空间连贯性, 跨空的网格 单元, 求得它与景物的交点。 空间网络分割方式 a. 均匀分割成大小相同立方体网格单元。 优点:用三维DDA算法, 计算简单。 缺点:较大存储需求。 b. 八叉树式空间分割。 优点:减少空间网格单元数目。 缺点:算法复杂。459.7 纹理(Texture)一、基本概念 纹理:物体表面所呈现的表面细节。 如本质物体木纹、装饰图案、机器表面文字 说明等等。 纹理分类 (1)颜色纹理:通过色彩或明暗度的变化体现 出来的表面细节(如布纹)。 (2)几何纹理:由物体表面不规则细小凹凸造 成(如桔子皱折表皮)。46 纹理映射(texture m

15、apping) 生成颜色纹理的方法。其过程是: 在一平面区域(纹理空间)上预先定义纹理图案; 然后建立物体表面的点与纹理空间的点之间的 对应关系(即映射)。 几何纹理生成方法 主要有法向扰动法、分形生成技术等。47二、纹理函数 最常用的纹理为二维光亮度函数,可用数学模 型定义或一幅平面图象表示。这种数学模型 定义在单位正方形区域, 称纹理空间, 定义在 纹理空间的函数即纹理函数。 实际上, 纹理函数往往采用一些特殊函数。例1:g(u,v) = 其中0ab1, X表示小于 X的最大整数。 g(u,v)用于摸拟国际象棋棋盘上的黑白相间方格。48例2:f(u,v)=A(cos(pu)+cos(qv)

16、 其中A为0,1上的随机变量, p, q为频率系数, u,v 为函数参数。 f(u,v)常用于摸拟粗布纹理。49三、纹理映射 离散法定义纹理 通过一个二维数组来定义各种图形、字符位 图和数字化图象构成的纹理。 纹理映射 为把二维纹理图案映射到三维的物体表面, 必须建立物体空间坐标(x,y,z)与纹理空间坐 标(u,v)之间的对应关系物体表面参数化。 (1) 如果物体表面是参数曲面, 对应是显然的; (2) 如果物体表面是平面多边形或隐函数定 义二次曲面, 须求出映射关系。50 二次曲面纹理映射 可用极坐标把曲面的隐式方程改写为参数方程。 例1:圆柱面x2+y2=1(0=z=1)改写为:给定u,v, 可以求出x,y,z。 反之, 给定圆柱面上一点(x,y,z), 可用下列公式求 出参数u, v。51例

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号