输入结构体和输出结构体
输入结构体一般存放的是输入信息,把需要参与计算的数据放入这个结构体中。
<span style="font-size:18px;">struct Input {
float2 uv_MainTex;//_MainTex纹理的uv坐标
float2 uv_BumpMap;//法线贴图
float3 viewDir;//观察方向,为了计算视察、边缘光照等效果
float4 screenPos;//屏幕坐标
float3 worldPos;//世界坐标
float3 worldRef1;//世界反射向量
float3 worldNormal;//世界法线向量
};</span>
surface shader的输出结构可使用默认的几种,也可自定义
<span style="font-size:18px;">struct SurfaceOutput{
fixed3 Albedo;//基础颜色(漫反射或镜面反射)
fixed3 Normal;//切线空间法线
fixed3 Emission;//自发光颜色
half Specular//高光强度
fixed Gloss//光泽度
fixed Alpha;//透明度
};</span>