【GAMES101学习笔记】07 - 着色01(光照,着色,图形管线)

1. 着色(shading)

着色(shading) :对某物体应用某个 材质(material) 的过程。

2. Blinn-Phong 反射模型

screenShot.png

高光(Specular highlight)

漫反射(Diffuse reflection)

间接光照(Ambient lighting)

3. 着色具有局部性

计算在特定着色点反射到相机的光线

假设 :着色点局部是一个标准的平面

screenShot.png

输入

  • 观察方向(Viewer direction): v \bold{v} v
  • 表面法线(Surface normal): n \bold{n} n
  • 光照方向(Light direction): l \bold{l} l(适用于多个灯光中的每一个)
  • 表面参数(Surface parameters):颜色、光泽……

当仅考虑局部的着色的时候,仅考虑当前点的着色状态,不考虑阴影的情况,即不考虑其他点的存在对当前点着色的影响。

4. 漫反射(Diffuse reflection)

漫反射(Diffuse reflection) :光向各个方向均匀散射

  • 所有观察方向的表面颜色都相同

screenShot.png

4.1 兰伯特余弦定律

相同的光照在不同角度的平面上,反射出的明暗程度不同。

screenShot.png

入射光与平面垂直:物体表面接收了光的全部能量。

screenShot.png

入射光与平面呈 60° 角,物体表面接收了光的 50% 能量。

screenShot.png

兰伯特余弦定律(Lambert’s cosine law)
一般来说,表面接收到的能量和光线方向 l \bold{l} l 与法线方向 n \bold{n} n 的余弦 cos ⁡ θ = l ⋅ n \cos{\theta} = \bold{l} \cdot \bold{n} cosθ=ln 成正比。

4.2 光的能量衰减

screenShot.png

可以将光照的能量看做一个球壳状的波,根据能量守恒定律,随着波的扩散,球壳表面积变大,球壳单位面积上的能量会衰减(设能量在传播过程中没有发生损失)。

4.3 朗伯着色(Lambertian Shading)

独立于视图方向的着色。

screenShot.png

L d = k d ( I / r 2 ) max ⁡ ( 0 , n ⋅ l ) L_d = k_d (I/r^2) \max (0,\bold{n} \cdot \bold{l}) Ld=kd(I/r2)max(0,nl)

  • L d L_d Ld :漫反射的反射光。
  • k d k_d kd :漫反射系数,向四周漫射的光通量与总的反射光通量之比。
  • ( I / r 2 ) (I/r^2) (I/r2) :在着色点处的光的能量(该式根据光的能量衰减模型来获得)。
  • max ⁡ ( 0 , n ⋅ l ) \max (0,\bold{n} \cdot \bold{l}) max(0,nl) :着色点接收到的光的能量(根据兰伯特余弦定律,特别地,当余弦为负数时,能量为零)。

NOTE :由于漫反射中,所有观察方向观察表面的结果都相同,因此上式与向量 v \bold{v} v 无关。

screenShot.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值