1、能量关系
Ii=Id+Is+It+Iv
I
i
=
I
d
+
I
s
+
I
t
+
I
v
入射光强=漫反射光强+镜面反射光强+透射光+被物体所吸收的光
2、简单光照明模型模拟物体表面对光的反射作用,光源被假定为点光源,反射作用细分为:镜面反射(specular)与漫反射(diffuse)。
简单光照明模型只考虑物体对直接光照的反射作用,而物体间的光反射作用,只用环境光(Ambient Light)来表示
如:Phong光照明模型
3、理想漫反射
Lambert模型
光源:无向光或者方向光。
模拟效果:入射光线向各方向均匀反射,与视点无关。
漫反射可表示为:
Id=IpKd∗(L⋅N)
I
d
=
I
p
K
d
∗
(
L
⋅
N
)
4、镜面反射
Is=ksIpcosnα
I
s
=
k
s
I
p
c
o
s
n
α
Is=ksIp(R⋅V)n
I
s
=
k
s
I
p
(
R
⋅
V
)
n
5、环境光(ambient light)
模拟物体间的光反射
Ie=Iaka
I
e
=
I
a
k
a
6、Phong照明模型
I=Iaka+Ilkd(L⋅N)+ks∑i=1m[Ipi(R⋅V)n]
I
=
I
a
k
a
+
I
l
k
d
(
L
⋅
N
)
+
k
s
∑
i
=
1
m
[
I
p
i
(
R
⋅
V
)
n
]
7、透射光
Ipt=ktIpb
I
p
t
=
k
t
I
p
b
8、明暗处理(shading)
(1)flat shading:在一个多边形内采用恒定强度。
(2)gouraud shading:计算网格顶点的光亮度值,通过双线性插值得到网格内部顶点光亮度值。
(3)phong shading:计算网格顶点的法向量,通过双线性插值得到网格内部顶点的法向量,计算各点的光亮度值。
9、全局光照明模型
直接光照+间接光照=全局光照
10、光线跟踪
四种射线:
视线:由视点与像素(x,y)发出的射线。
阴影测试线:物体表面上点与光源的连线
反射光线
折射光线
11、光强的计算
视线V与物体表面交于点P时,视线V上在P点处的总的光强由三部分组成。
(1)由光源产生的直接的光线照射光强,是交点处的局部光强,可以phong照明模型+透射光模型得到。
(2)反射方向上由其它物体引起的间接光照光强,由IsK′s
I
s
K
s
′
计算,Is
I
s
通过对反射光线的递归跟踪得到。
(3)折射方向上由其它物体引起的间接光照光强,由ItK′t
I
t
K
t
′
计算,It通过对折射光线的递归跟踪得到
12、光线跟踪的终止条件
(1)该光线未碰到任何物体。
(2)该光线碰到了背景。
(3)光线在经过许多次反射和折射以后,就会产生衰减,光线对于视点的光强贡献很小(小于某个设定值)。
(4)光线反射或折射次数即跟踪深度大于一定值
13、光线跟踪加速
加速数据结构
并行