菲涅尔效果.书上的公式,效果图
和原书相比,代码上我稍微调整了下:1 添加了菲涅尔颜色,让效果更显而易见. 2 添加了菲涅尔范围控制,原书中是固定值,我改为范围变量.代码如下:
Shader"wx/Fresnel"{
Properties{
_Color("Color Tint",Color)=(1,1,1,1)
_FresnelScale("Fresnel Scale",Range(0,1))=0.5
_Cubemap("Reflection Cubemap",Cube)="_Skybox"{}
_FresnelColor("Fresnel Color",Color)=(1,1,1,1)
_FresnelRange("Fresnel Range",Range(0,10))=5
}
Subshader{
Pass{
Tags {"LightMode"="ForwardBase"} //灯光模式必写,忘记写后,灯光的朝向会错误.
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "Lighting.cginc"
fixed4 _Color;
fixed4 _FresnelColor;
fixed _FresnelScale;