环境光
接触过光照模型的小伙伴肯定对环境光不陌生,比如phong光照模型,渲染结果就是下面几项的线性叠加:
环境光+漫反射+高光
而一般情况我们在Shader中计算环境光也是简单的不能再简单了,直接可以从Unity的宏定义中拿到环境光颜色值: UNITY_LIGHTMODEL_AMBIENT.xyz
他的定义是这样的
#define UNITY_LIGHTMODEL_AMBIENT (glstate_lightmodel_ambient * 2)
接下来就是设置环境光并进行测试.
设置
通过Window->Rendering->Lighting Settings打开Lighting面板
美术同学应该比较熟悉,通过可以方便的调整整个场景的色调,而且不是额外加入点光源的方式,也能省下不少开销. 这里有三种模式可选,Skybox 和 Color 都只支持单一颜色,面板如下:
计算与测试
先对这两种进行测试,建立一个场景,放置两个球,一个使用StandardSha