US3S5L1——多种光源
US3S5L1——多种光源
多种光源
Unity当中一共支持四种光源类型:平行光,点光源,聚光灯,面光源。其中面光源只在烘焙中使用,这里不讨论
-
Shader 开发中常用的光源属性:位置、方向、颜色、强度、衰减
-
对比平行光、点光源、聚光灯
- 平行光:没有位置、没有衰减、只有方向、颜色、强度参与计算
- 点光源:五个属性都需要考虑
- 聚光灯:五个属性都需要考虑,并且计算最复杂,因为它的范围很特殊,需要进行更复杂的计算
平行光
-
充当角色:太阳

-
照射范围:无限制
-
特点:
- 它不存在固定的位置
- 它的重要属性只有方向(可以通过 Transform 的
Rotation 属性来改变方向) - 它到场景中所有点的方向都是一样的
- 由于它没有位置,因此它没有衰减的概念(光的强度不会随着距离而发生变化)

点光源
-
充当角色:灯泡、烛光 等
-
照射范围:有限
-
特点:
- 它的光是由一个点发出的,向四面八方延伸的光
- 它的范围由参数
Range 来决定 - 它的位置由
Transform 中的Position 来决定 - 它存在衰减,随着物体离点光源距离决定衰减强弱

聚光灯
-
充当角色:探照灯、手电筒 等

-
照射范围:有限
-
特点:
- 它的光范围由空间中的一块锥形区域定义
- 它的范围由参数
Range 和Spot Angle 共同决定 - 它的位置由
Transform 中的Position 来决定 - 它存在衰减,随着物体离聚光灯距离决定衰减强弱。
但是它相对点光源衰减计算公式更复杂,因为需要点是否在锥形范围内

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 文KRIFE齐的博客!
