webgl基础4-灯光
灯光
光源类型
- 点光源:一个点向周围发光,需要定义点光的位置和方向、颜色
- 平行光:从无限远的地方发射的光;只需定义光的方向和颜色,与位置无关
- 环境光:间接光,是光源发出后,经过其他物体反射后照射到物体表面。环境光是均匀照射到物体表面,只需定义光的颜色。
计算公式
环境反射
<环境反射光颜色>=<入射光颜色>*<表面基底色>
漫反射
漫反射中反射光的颜色:取决于入射光的颜色、表面的基地色、还有入射光与物体表面的法向量形成的入射角。
设定入射角为α【可以通过光线方向和法线方向点积来计算】,漫反射光颜色的计算公式
<漫反射光颜色>=<入射光颜色>*<表面基底色>*cosα
cosα=<光线方向><法线方向>
最后漫反射光颜色计算公式
**<漫反射光颜色>=<入射光颜色><表面基底色>(** <光线方向><法线方向> )
2种反射同时存在
真实环境中,漫反射和环境反射是同时存在,需要将两者结果加起来,就会得到物体最终被观察到的颜色。
<物体表面反射光颜色>=<漫反射光颜色>+<环境光反射的颜色>
编辑 (opens new window)
上次更新: 2024/07/24, 09:54:49