欢迎光临散文网 会员登陆 & 注册

图形学学习笔记(三) Phong光照模型(下)

2023-03-07 18:48 作者:Tokitama  | 我要投稿

光照模型函数

考虑到眼睛接收的光一部分由入射光的漫反射提供,另一部分由反射光的镜面反射提供,物体上P点处的阴影可以计算为:

    S_%7Bp%7D%3DC_%7Bp%7D%5Bcos(i)(1-d)%2Bd%5D%2BW(i)%5Bcos(s)%5D%5En

其中S_%7Bp%7D为P点的着色,C_%7Bp%7D是特定波长在P点的反射系数,i是入射角,d是漫反射系数,W(i)是给出镜面反射光和入射光的比率作为入射角i的函数,s是反射光方向和视线的角度,n是每种材料的镜面反射光进行建模的幂。当然我们可以再次对公式进行简化。其中k为入射方向单位向量,u为视线方向单位向量。

cos(i)%3DkN_%7B%7Dp%2F%7CN_%7Bp%7D%7C 

cos(s)%3DuR_%7Bp%7D%2F%7CR_%7Bp%7D%7C

接下来,我们需要知道反射光线在笛卡尔坐标系上的三个分量,再计算反射光线和视线之间的余弦值,那么该余弦值即我们的W(i)。

即可得到以下等式

  • X_%7Br%7D%2FY_%7Br%7D%3DX_%7Bn%7D%2FY_%7Bn%7D

  • Z_%7Bn%7D%3Dcos(i)

  • Z_%7Br%7D%3Dcos(2i)%3D2%5Bcos(i)%5D%5E2-1%3D2Z_%7Bn%7D%5E2-1

  • X_%7Br%7D%5E2%2BY_%7Br%7D%5E2%3D%5Bsin(2i)%5D%5E2%3D1-%5Bcos(2i)%5D%5E2

  • X_%7Br%7D%3D2Z_%7Bn%7DX_%7Bn%7D    Y_%7Br%7D%3D2Z_%7Bn%7DY_%7Bn%7D

Blinn-Phong模型的改进

  • 漫反射

兰伯特余弦定律(Lambert Consine Law)中指出,漫反射的大小取决于表面法线和光线的夹角,当夹角越大时,漫反射分量越小,当夹角接近90度时,我们认为漫反射几乎为零。

L_%7Bd%7D%3Dk_%7Bd%7D(I%2Fr%5E2)max(n%C2%B7l)

  • 镜面反射

L_%7Bs%7D%3Dk_%7Bs%7D(I%2Fr%5E2)max(n%C2%B7h)%5Ep

具体实现


图形学学习笔记(三) Phong光照模型(下)的评论 (共 条)

分享到微博请遵守国家法律