TA学习之路——2.4 图形传统光照模型详解
1.光照模型
1.1 初识光照模型
光照模型(illumination model)。也称为明暗模型,用于计算物体某点处的光强(颜色值)。从算法理论基础而言,光照模型分为两类:一种是基于物理理论的,另一种是基于经验模型的。
基于物理理论的光照模型(PBR):偏重于使用物理的度量和统计方法,效果非常真实,但是计算复杂,实现起来也较为困难。
经验模型(Lambert、Billing-phone):是对光照的一种模拟,通过实践总结出简化的方法,简化了真实的光照计算,并且能达到很不错的效果。
1.2 为什么需要光照模型?
现实世界的光照是极其复杂的,而且会受到诸多因素的影响,有限的计算能力无法完全模拟。使用简化的光照模型对现实的情况进行近似,使得计算处理起来会更容易,并且令效果更符合需求。这些光照模型就是基于我们对光的物理特性的理解。
1.3 光照模型的发展
2.局部光照模型的定义
局部光照模型只关心直接光照部分,即直接从光源发出并照射到物体表面并反射至摄像头的光线。
局部光照模型:
全局光照模型:
3.局部光照模型的组成
局部光照模型满足叠加原理,可以基本将光线分为四个部分
1.漫反射
2.高光反射
3.环境光
4.自发光
3.1 漫反射
3.1.1 什么是漫反射?
在光照模型的定义中,当光线从光源照射到模型表面时,光线均匀被反射到各个方向,这种现象就是漫反射在漫反射的过程中,光线发生了发生了吸收和散射,而因此改变颜色和方向。
3.1.2 如何计算?
漫反射光照符合Lambert定律,反射光强与法线和光源方向之间的夹角的余弦值成正比
3.1.3 Lambert余弦定律
理论基础
在光学中通常使用辐射度来量化光。
其中光源每秒发出的能量为辐射通量 P P P
单位面积接受的光量为辐射通量密度(辐照度) P / A P/A P/A
当光源垂直照射的单位面积的辐照度为 E 1 = P / A E_1=P/A E1=P/A
将光束以某个角度照射到更大的平面上的辐射度为 E 2 = P / A 2 E_2 = P/A_2 E2=P/A2
可以认为 A 1 A_1 A1与 A 2 A_2 A2的关系是
c o s θ = A 1 A 2 cos\theta = \frac {A_1}{A_2} cosθ=A2A1
E 2 = P A 2 = P A 1 c o s θ = E 1 c o s θ = E 1 d o t ( n , t ) E_2 = \frac {P}{A_2}=\frac {P}{A_1}cos\theta=E_1cos\theta = E_1dot(n,t) E2=A2P=A1Pcosθ=E1cosθ=E1