第十二讲 真实感图形绘制
简单光照明模型
多边形绘制方法
表面细节模拟
透明
整体光照明模型
简单光照明模型
光照射到物体表面,主要发生:
反射
透射(对透明物体)
部分被吸收成热能
反射光,透射光决定了物体所呈现的颜色
简单光照明模型
假定物体是不透明的(即无透射光)
? 环境光,在空间中近似均匀分布,即在任何位置、
任何方向上强度一样,记为 Ia
? 环境光反射系数 Ka,在分布均匀的环境光照射
下,不同物体表面所呈现的亮度未必相同,因为它们
的环境光反射系数不同。
? 光照明方程(仅含环境光),Ie = KaIa
Ie为物体表面所呈现的亮度
? 。
简单光照明模型
? 点光源的照射,照在物体的不同部分其亮度也不同,
亮度 Ip的大小依赖于物体的朝向及它与点光源之间的距离,
? 漫反射 (diffuse reflection):粗糙、无光泽的表
面对光的反射
? 朗伯余弦定律,Id = IpKd cos a
漫反射光的强度只与入射角有关
? 光照明 方程 (含环境光与漫反射光)
I = Ie + Id = IaKa + IpKd cos a
简单光照明模型
? 镜面反射:
光滑表面,“高光”效果;理想反射面与非理想反射
面
? Phong 模型
? 光照明 方程
简单光照明模型
? 光的衰减
两个阶段,1)从光源到物体表面的过程中的衰减
2)从物体表面到人眼过程中的衰减
总的效果:物体表面的亮度降低
? 光照明方程
1)有效衰减函数的加入
2)深度暗示技术的加入
简单光照明模型
? 彩色场景的产生
1)选择一个合适的颜色模型
2)为颜色的三个分量分别建立光照明方程
? 光照明 方程
固定颜色光的光照明方程
任意颜色光的光照明方程
简单光照明模型
? 多光源照射的光照明方程
? 小结
图 13.11 采用各种光照明模型绘制的球
P307
多边形绘制方法
? 分类,均匀着色与光滑着色
? 均匀着色
所适用场景,1)光源在无穷远处;
2)视点在无穷远处;
3)多边形是物体表面的精确表示;
? 光滑着色,亦称插值着色
Gouraud着色方法
Phong着色方法
多边形绘制方法
? Gouraud着色方法
通过对多边形顶点颜色进行线性插值来获得
其内部各点颜色,又称 颜色插值着色 方法。
对多边形网络中的每一个多边形,其着色步骤如下:
1)计算多边形的单位法矢量;
2)计算多边形顶点的单位法矢量;
3)利用光照明方程计算顶点的颜色;
4)在扫描线消隐算法中,对多边形顶点颜色进行 双线
性插值,获得多边形内部(位于多边形内的扫描线上)
各点的颜色。
多边形绘制方法
? Phong着色方法
通过对多边形顶点的法矢量进行线性插值来获得其内
部各点的法矢量,又称 法向插值着色 方法。
步骤如下:
1)计算多边形的单位法矢量;
2)计算多边形顶点的单位法矢量;
3)在扫描线消隐算法中,对多边形顶点的法矢量进
行 双线性插值,获得多边形内部(位于多边形内的扫
描线上)各点的法矢量;
4)利用光照明方程计算各点的颜色。
多边形绘制方法
? 两方法的比较
1) Phong着色方法计算量远大于 Gouraud着色方法
2) Phong着色方法绘制的图形比 Gouraud方法更真实
体现在两个场合:高光区域的扩散
不产生高光区域
? 插值着色方法存在的问题
表面细节模拟
光滑表面(简单光照明模型模拟)
细节表面(复杂光照明模型模拟)
颜色纹理与几何纹理
? 表面细节多边形,模拟简单、规则的颜色纹理
? 纹理映射,模拟精致、复杂的颜色纹理
? 纹理来源,1)数字图像; 2)数学公式定义的纹理函数
? 法向扰动法,模拟凹凸不平的物体表面,多用于产
生几何纹理。难度在于 扰动函数的选取。
透明
? 简单透明与带有折射的透明
? 产生简单透明效果的方法
插值透明方法
过滤透明方法
简单光照明模型亦称局部光照明模型,
其假定物体是不透明的,只考虑光源的
直接照射,而将光再物体之间的传播效
果笼统地模拟为环境光。
而整体光照明模型则不然,它考虑了物
体之间的相互影响以产生整体照明效果
整体光照明模型
物体之间的相互影响通过光线在其间的
漫反射、镜面反射、透射产生。
光线跟踪方法
辐射度方法
简单光照明模型
多边形绘制方法
表面细节模拟
透明
整体光照明模型
简单光照明模型
光照射到物体表面,主要发生:
反射
透射(对透明物体)
部分被吸收成热能
反射光,透射光决定了物体所呈现的颜色
简单光照明模型
假定物体是不透明的(即无透射光)
? 环境光,在空间中近似均匀分布,即在任何位置、
任何方向上强度一样,记为 Ia
? 环境光反射系数 Ka,在分布均匀的环境光照射
下,不同物体表面所呈现的亮度未必相同,因为它们
的环境光反射系数不同。
? 光照明方程(仅含环境光),Ie = KaIa
Ie为物体表面所呈现的亮度
? 。
简单光照明模型
? 点光源的照射,照在物体的不同部分其亮度也不同,
亮度 Ip的大小依赖于物体的朝向及它与点光源之间的距离,
? 漫反射 (diffuse reflection):粗糙、无光泽的表
面对光的反射
? 朗伯余弦定律,Id = IpKd cos a
漫反射光的强度只与入射角有关
? 光照明 方程 (含环境光与漫反射光)
I = Ie + Id = IaKa + IpKd cos a
简单光照明模型
? 镜面反射:
光滑表面,“高光”效果;理想反射面与非理想反射
面
? Phong 模型
? 光照明 方程
简单光照明模型
? 光的衰减
两个阶段,1)从光源到物体表面的过程中的衰减
2)从物体表面到人眼过程中的衰减
总的效果:物体表面的亮度降低
? 光照明方程
1)有效衰减函数的加入
2)深度暗示技术的加入
简单光照明模型
? 彩色场景的产生
1)选择一个合适的颜色模型
2)为颜色的三个分量分别建立光照明方程
? 光照明 方程
固定颜色光的光照明方程
任意颜色光的光照明方程
简单光照明模型
? 多光源照射的光照明方程
? 小结
图 13.11 采用各种光照明模型绘制的球
P307
多边形绘制方法
? 分类,均匀着色与光滑着色
? 均匀着色
所适用场景,1)光源在无穷远处;
2)视点在无穷远处;
3)多边形是物体表面的精确表示;
? 光滑着色,亦称插值着色
Gouraud着色方法
Phong着色方法
多边形绘制方法
? Gouraud着色方法
通过对多边形顶点颜色进行线性插值来获得
其内部各点颜色,又称 颜色插值着色 方法。
对多边形网络中的每一个多边形,其着色步骤如下:
1)计算多边形的单位法矢量;
2)计算多边形顶点的单位法矢量;
3)利用光照明方程计算顶点的颜色;
4)在扫描线消隐算法中,对多边形顶点颜色进行 双线
性插值,获得多边形内部(位于多边形内的扫描线上)
各点的颜色。
多边形绘制方法
? Phong着色方法
通过对多边形顶点的法矢量进行线性插值来获得其内
部各点的法矢量,又称 法向插值着色 方法。
步骤如下:
1)计算多边形的单位法矢量;
2)计算多边形顶点的单位法矢量;
3)在扫描线消隐算法中,对多边形顶点的法矢量进
行 双线性插值,获得多边形内部(位于多边形内的扫
描线上)各点的法矢量;
4)利用光照明方程计算各点的颜色。
多边形绘制方法
? 两方法的比较
1) Phong着色方法计算量远大于 Gouraud着色方法
2) Phong着色方法绘制的图形比 Gouraud方法更真实
体现在两个场合:高光区域的扩散
不产生高光区域
? 插值着色方法存在的问题
表面细节模拟
光滑表面(简单光照明模型模拟)
细节表面(复杂光照明模型模拟)
颜色纹理与几何纹理
? 表面细节多边形,模拟简单、规则的颜色纹理
? 纹理映射,模拟精致、复杂的颜色纹理
? 纹理来源,1)数字图像; 2)数学公式定义的纹理函数
? 法向扰动法,模拟凹凸不平的物体表面,多用于产
生几何纹理。难度在于 扰动函数的选取。
透明
? 简单透明与带有折射的透明
? 产生简单透明效果的方法
插值透明方法
过滤透明方法
简单光照明模型亦称局部光照明模型,
其假定物体是不透明的,只考虑光源的
直接照射,而将光再物体之间的传播效
果笼统地模拟为环境光。
而整体光照明模型则不然,它考虑了物
体之间的相互影响以产生整体照明效果
整体光照明模型
物体之间的相互影响通过光线在其间的
漫反射、镜面反射、透射产生。
光线跟踪方法
辐射度方法