渲染包含了两大部分:
1.决定一个像素的可见性
2.决定这个像素上的光照计算
一、光照模型背后的基本原理
1.光源:
在光学中,我们用 辐照度 来量化光(确定一个光源发出了多少光),
光方向为L,光线间距为d
垂直照射时,物体表面光线间距d,垂直时θ为0,也可以表示为d/cosθ。
斜着照射时,物体表面光线间距为d/cosθ,θ为光线与物体法线夹角。
物体表面光线越密集,辐照度越大,所以辐照度与d/cosθ成反比,与cosθ成正比。
cosθ可以通过光源方向L和法线的点积得到。这就是点积计算辐照度的由来。
2.吸收和散射
光线与物体相交时,两种结果:吸收或者散射。
散射改变光的方向,但不改变密度和颜色。而吸收相反。
散射又分为:折射和反射。
为了区分这两种不同散射,光照模型中两种部分表示:高光反射和漫反射。
高光反射部分表示物体表面如何反射光线,漫反射部分表示有多少光线会被折射、吸收、散射出表面。
根据入射光线的数量和方向,我们可以计算出出射光线的数量和方向,使用出射度来描述。
辐照度和出射度是满足线性关系的,他们之间的比值就是材质的漫反射和高光反射属性。
3.着色
着色指 根据材质属性(如漫反射属性)、光源信息(光源方向、辐照度等),使用一个等式去计算沿某个观察方向的出射度的过程。
我们把这个等式就叫做 光照模型 。
不同的光照模型有不同的目的,例如,一些用于描述粗糙的物体表面,一些用于描述金属表面等等。
4.BRDF光照模型(经验模型)
这个BRDF模型是用来解决 光线从某个方向照射到一个表面时,有多少光被反射,反射方向等等。
BRDF大多使用一个数学公式来表示,并且提供一些参数来调整材质属性。
(就是给定入射光线方向和辐照度后,BRDF可以给出某个出射方向上的能量分布)。
二、标准光照模型
基本理念:只关心直接光照(直接从光源发射出来,照射到物体表面,经过反射直接进入摄像机的光线)。
基本方法(将进入摄像机的光线分为4部分)