菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响

在加入了漫反射与高光后,再给材质添加菲涅尔(Fresnel)反射,并让环境光对它产生影响。
(3)菲涅尔(Fresnel)反射
当光入射到折射率不同的两个媒质分界面时,一部分光会被反射,这种现象称为菲涅尔反射。
菲涅尔反射是玉/水/皮肤(油腻的师姐你在la儿)/瓷砖釉等会产生的效果,其特点是与视线垂直的地方反射弱,与视线相对比较平行的地方反射强。
ShaderForge直接封装菲涅尔反射方法 提供Nrm(一般为法线)和Exp(指数)两个参数,Exp越小Fresnel反射越明显。
为shader添加拉杆来控制菲涅尔反射的强度:
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第1张图片
添加了Fresnel反射的球er(左)与没有添加Fresnel反射的球er(右):
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第2张图片
左边这个明显透亮透亮的,嗯,想含在嘴里peropero。
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第3张图片


常将Fresnel反射与漫反射相乘后直接与高光和漫反射相加:
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第4张图片
添加了菲涅尔反射后的材质:
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第5张图片

有了类似大理石地砖釉面的效果。

(4)让环境光影响材质
LightAtten和LightColor则让材质受环境光影响和环境光色影响
直接与漫反射、高光和菲涅尔反射的加和相乘即可得到标准Blinn-Phong模型的CustomLighting。
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第6张图片
添加了环境光之后的材质:
菜鸡的ShaderForge2:为材质添加菲涅尔反射和环境光影响_第7张图片

光效更加自然柔和,有了些许环境光的黄色。


至此一个典型的光照模型搭建完成。



你可能感兴趣的:(Unity,ShaderForge)