第9章phong光照模型_第1页
第9章phong光照模型_第2页
第9章phong光照模型_第3页
第9章phong光照模型_第4页
第9章phong光照模型_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

第九章

简单光照明模型

生成连续色调的真实感图形的四个主要步骤:用数学方法建立所构造三维场景的几何描述,并将它们输入计算机。(造型)将三维几何描述转换为二维透视图。(投影)确定场景中的所有可见面。(消隐)计算场景中可见面的颜色。(光照)光照模型:根据光学物理中的有关定律,计算出景物表面上任一点投向观察者眼中的光亮度的大小和色彩组成的公式,从而在显示器上生成所显示的真实感图形。根据光学、物理学的知识,物体表面呈现的颜色是由表面向视线方向辐射的光能决定的。若物体表面向视线方向辐射的光中等量包含了所有波长的可见光,则物体表面将呈现白色、灰色或黑色,即为非彩色;否则表面将呈现彩色。当光照到一个物体表面上时会产生反射光、透射光和转换成热量。其中,反射光和透射光的强弱决定了物体表面的明暗程度,而这些光中所含不同波长光的比例则决定了物体表面的颜色。计算波长比例要涉及到光谱分析和光谱到颜色的转换,在计算机图形学中,我们不用这种方法来计算,而是采用较为简单的方法来计算物体的颜色值。也就是一些简单的光照模型。光的特性可见光波段中每一频率对应一种单独的颜色,其低频率端是红色,高频率端是紫色。从低频到高频的光谱颜色变化分别是红,橙,黄,绿,蓝,青和紫。可用光的波长(λ)或频率(f)来表示各种颜色。除频率和波长以外,描述光的各种性质还需要其它一些特征。其中一组特征便是亮度和明度。物体表面的亮度与其周围环境的亮度无关。表面的明度即人眼感知到的亮度与其周围环境的亮度相关。具有恒定亮度的物体,当将其置于不同环境时,它的明度不同。光的另外一个特征就是光的纯度(Purity)或叫饱和度(Saturation)。纯度说明光的颜色表现得多纯。淡的颜色说明不太纯。颜色模型所谓颜色模型指的是某个三维颜色空间中的一个可见光子集,它包含某个颜色域的所有颜色。采用颜色模型的目的是在某个颜色域中方便的指定颜色。RGB模型R、G、B分别取值0-1,0-255三基色示意图RGB彩色模型也称为加色模型,色彩来源于红、绿、蓝3种基本色的不同亮度的叠加,故称加色模型。它主要用来描述发光设备,如显示器、电视机、扫描仪等装置所表现的颜色。

9.1简单光照明模型

用计算机在图形设备上生成连续色调的真实感图形必须完成四个基本的任务

建模投影变换可见性计算可见面颜色用数学方法建立所构造三维场景的几何描述,并将他们输入计算机,这部分工作可由三维立体造型或曲面造型系统来完成将三维几何描述转化为二维透视图,这可通过对场景的透射变化来完成确定场景中的所有可见面,这需要使用隐藏面消除算法将视域之外或被其他物体遮挡的不可见面消去。计算场景中可见面的颜色。9.1.1光源

光源称为发光体反射表面(如房屋的墙壁)则称为反射光源光源反射面通常在一个不透明且不发光的物体表面所观察到的光线是其反射光,它由光源与其他物体表面的反射光所共同产生光源的几何形状

点光源,线光源,面光源和体光源光源向四周所辐射光的光谱分布漫反射:粗糙物体表面往往将反射光向各个方向散射。物体颜色实际上就是入射光线被漫反射后所表现出来的颜色。

镜面反射:磨光物体表面产生的高光或强光空间光亮度分布在计算机图形学中,认为光源通常朝空间各个方向发射的光强是相同的。但实际情况常常不是这样,例如遮挡。

光源的属性包括9.1.2材质材质的颜色是由它所反射的光的波长决定如果光线被投射至一个不透明的物体表面,则部分光线被反射,部分被吸收物体表面的材质类型决定了反射光的强弱表面光滑较亮的材质将反射较多的入射光,而较暗的表面则吸收较多的入射光。同样对于一个半透明物体的表面,部分入射光会被反射,而另一部分则被折射。

仅考虑光源直接照射在景物表面所产生的光照效果景物表面通常被假定为不透明,且具有均匀反射率能表现由光源直接照射在漫射表面上形成的连续明暗色调,镜面上的高光以及由于景物互相遮挡而形成的阴影等光照明模型简单光照明模型

光照明模型

光照效果

光照明模型

一个光照的球体光照产生的场景假设物体不透明那么物体表面呈现的颜色仅由其反射光决定。反射光组成环境反射环境反射假定入射光均匀地从周围环境入射至景物表面并等量地向各个方向反射出去漫反射与镜面反射漫反射分量和镜面反射分量则表示特定光源照射在景物表面上产生的反射光。9.1.3简单光照明模型

环境反射光是由环境光在邻近物体上经过多次反射所产生的。光是来自四面八方的。这种光产生的效应简化为它在各个方向都有均匀的光强度Ia,

某一个可见物体在仅有环境光照明的条件下,其上各点明暗程度完全一样,分不出哪个地方亮,哪个地方暗。1.环境反射光

Ia为物体的环境光反射亮度,

Ipa为环境光亮度,

ka为物体表面的环境光反射系数(0≤ka≤1)

环境反射光亮度可表示为:

漫反射分量表示特定点光源在景物表面某一点的反射光中那些向空间各方向均匀反射出去的光,

表面对入射光在各个方向上都有强度相同的反射,因而无论从哪个角度观察,这一点的光亮度都是相同的。IpdIpdcosiiCB’ABC’2.漫反射光对于一个漫反射体,表面的反射光亮度和光源入射角(入射光线和表面法向量的夹角)的余弦成正比Id为物体表面漫反射光的光亮度Ipd为光源垂直入射时反射光的光亮度i为光源入射角kd为漫射系数,决定于表面材料及入射光的波长(0≤kd≤1)IpdIpdcosiiCB’ABC’这种反射光的计算用郎伯余弦定律由于A点的光源入射角为零,故发出的光亮度最大(为Ipd)而B和B’的光亮度就弱些。由于C和C’的光源入射角为90。,故其表面光亮度为零。球面的明暗过渡曲线如图

(b)所示光亮度Ipd简单漫反射模型用于球面(a)(b)CBAB’C’IpdIpdcosiiCB’ABC’球面的漫反射N0:物体表面单位法向量L0:物体表面一点指向点光源的单位向量漫反射光计算式可表示为:

NAiN0

入射光L0NL0iN0镜面反射光为朝一定方向的反射光。根据光的反射定律,反射光和入射光对称地分布于表面法向的两侧。

对纯镜面,入射至表面面元上的光严格地遵循光的反射定律单向反射出去,反射角与入射角相等。

反射光入射光纯镜面

(a)3.镜面反射光

理想镜面反射LNPRVLNPR粗糙表面的镜面反射一般光滑表面镜面反射LNPR一般光滑平面

(b)Nn大n小表面实际上是有许多朝向不同的微小平面组成其镜面反射光分布于表面镜面反射方向的周围常采用余弦函数的幂次来模拟一般光滑表面的镜面反射光的空间分布图镜面反射反射光入射光纯镜面

(a)N反射光入射光一般光滑表面:Is

为观察者接受到的镜面反射光亮度Ips为入射光的光亮度,θ为镜面反射方向和视线方向的夹角,介于0o到90o之间n为镜面反射光的会聚指数(与物体表面光滑度有关)ks为镜面反射系数(与材料性质和入射光波长有关)。

图镜面反射纯镜面

(a)一般光滑平面

(b)N反射光入射光N反射光入射光n大n小采用余弦函数的幂次来模拟一般光滑表面的镜面反射光的空间分布。镜面高光指数较光滑的物体表面(如金属、玻璃等)光强的空间分布较集中,高光范围较小宜取较大的值(大于100或更大)粗糙的物体表面(如纸张、木材、粉笔等)光强的空间分布较分散,高光范围较大宜取较小的值(小于或接近于1)投向观察者的镜面反射光不仅决定于入射光,而且和观察者的观察方向有关。当视点取在镜面反射方向附近时,观察者接受到的镜面反射光较强,而偏离这一方向观察时,镜面反射光就会减弱甚至消失。镜面反射的视点相关性镜面反射光的会聚指数n

图Phong光照明模型用于光滑球面时的情形θIpsIpscosnθθE‘DE’

(a)(b)EDE’光亮度Ipd漫反射系数/镜面反射系数图Phong模型计算中涉及的各方向向量PVRNLiθ

ka

环境反射系数kd漫反射系数ks镜面反射系数∑表示对所有特定光源求和

kd+ks=1Phong模型当光源有多个时,则上式可写为:简单光照明模型(Phong模型)

Phong模型基于RGB三基色颜色系统的Phong模型光谱量对应的颜色可由用户直接指定一旦反射光中三种分量的颜色以及它们的系数ka,kd和ks确定之后,从景物表面上某点达到观察者的反射光颜色就仅仅和光源入射角和视角θ有关,因此,Phong模型实际上是纯几何模型。设L0,N0,R0,V0是与L,N,R,V相应的单位向量,则

R0NL0i图R0的表示N0L0iV0在实际应用中,为了减小计算量,可采用下面的方法计算cosi和cosθ

。H0为沿L和V的角平分线的单位向量,可理解为朝观察方向产生镜面反射的虚拟表面的法向量,H和表面的实际法向量N之间的角度反映了射向观察者的镜面反射光的大小。Phong模型成为

I=kaIpa+∑[kdIpdEd+ksIpsEns]Ed=(N0·L0)为漫反射明暗度Es=(N0·H0)为镜面反射明暗度

LNHV在实际使用中,由于cosθ=(R0·V0)有时常用(N0·H0)来代替。Phong光照模型是真实感图形学中提出的第一个有影响的光照明模型存在问题显示出的物体(如塑料)没有质感环境光是常量,没有考虑物体之间相互的反射光镜面反射的颜色是光源颜色,与物体的材料无关镜面反射的计算在入射角很大时会产生失真9.2

光滑明暗处理技术产生真实感图形时,为提高算法效率,光滑景物表面由一些多边形近似。使用通常的多边形扫描线算法来绘制这种近似表示的物体,则生成的图形将失去原有曲面的光滑性,而呈现多面体状。原因:不同平面片之间存在不连续的法向量,导致由多个平面片表示的物体表面光亮度呈现不连续跃变

(a)(b)

光滑表面的多边形表示7123465存在问题用尽可能小的多边形来逼近和表示曲面,使光照效果中存在的不连续的光亮度跳跃变化小于人类视觉的分辨率Gouraud光亮度插值技术Phong法向量插值技术解决方法Gouraud

模型Phong模型扫描线9.2.1Gouraud明暗处理技术将曲面表面某一点的光亮度做近似表示,近似值取为该曲面的各多边形顶点光亮度的双线性插值。I1V1V2V3I2I3AP(Ip)B算法思想具体算法思想步骤对多边形网格中的每一个多边形:

1)计算多边形的单位法矢量;

2)计算多边形顶点的单位法矢量;

3)利用光照模型计算顶点的颜色;

4)在扫描线消隐算法中对多边形顶点颜色进行双线性插值获得位于多边形内扫描线上各点的颜色法向量计算法一:近似计算,取和顶点关联的各多边形面片的平均法向量作为该顶点的法向量法二:若已知生成该多面体的原始曲面,取多边形各顶点处原始曲面的真正法向量将法向量代入光照明模型进行光亮度计算。N2N1N4PN3多边形各顶点光亮度计算光亮度线性插值--在采用扫描线算法对多边形进行绘制时先用多边形顶点的光亮度线性插值出当前扫描平面与多边形边界交点处的光亮度,然后再用交点的光亮度做线性插值求出多边形与扫描平面相交区段上每一采样点的光亮度值

其中y为各点投影到屏幕之后的y轴坐标。其中x为各点投影到屏幕之后的x轴坐标。图

采用双线性插值计算P点的光亮度I1V1V2V3B

扫描线

AI2I3P

(Ip)亮度双线性插值扫描线x231ypab4采用Gouraud明暗处理不但可以克服由多边形近似表示的曲面的光亮度不连续现象,而且计算量也很小。为了进一步提高计算效率,线性插值可使用增量法进行计算,其计算量仅涉及一次加法计算。可沿扫描线,从左至右顺序计算AB区段上所有象素的光亮度。设IA,IB已确定,P1和P2点是相邻两象素的坐标,相邻象素的插值参数之差为△t,那么,P2点光亮度IP2和P1点光亮度IP1之间有以下关系:这种增量方式的光亮度计算使得Gouraud明暗处理广泛用于速度要求较高的应用领域,如飞行模拟、动画设计及CAD领域的快速显示等。不能正确地模拟高光

这是因为采用光亮度插值后将使多边形内的高光丢失。所绘制画面会诱发马赫带效应

虽然光亮度双线性插值保证了由多边形近似表示的曲面上各处光亮度的连续变化,但在相邻多边形的公共边界上光亮度的一阶导数并不连续,由于人眼的光学错觉,光亮度变化一阶不连续的边界处会呈现亮带或黑带,即马赫带效应。克服这些缺点的一种方法是采用Phong明暗处理Gouraud明暗处理的缺点9.2.2Phong明暗处理技术

它的基本思想是对多边形顶点处(平均)法向量做双线性插值,以增加一定的计算量为代价克服了Gouraud明暗处理的缺点。Phong明暗处理能正确地模拟高光并能大大减轻马赫带效应。也可采用扫描线双线性插值方法N3ANAN2BNBN1V1V2V3图Phong明暗处理NPPPhong明暗处理步骤

1)计算多边形的单位法矢量;

2)计算多边形顶点的单位法矢量;

3)在扫描线消隐算法中对多边形顶点法矢量进行双线性插值获得位于多边形内的扫描线上各点的法矢量;

4)利用光照模型计算各点的颜色同Gouraud明暗处理中的双线性插值方法类似也可采用前述的增量法。优点:绘制的图形比Gouraud方法更真实缺点:计算量远大于Gouraud方法Phong明暗处理小结光照模型分为简单光照模型和整体光照模型。简单光照模型仅考虑光源直接照射在景物表面所产生的光照效果,景物表

温馨提示

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

评论

0/150

提交评论