SurfaceShader

来源:互联网 发布:淘宝网商城女包包 编辑:程序博客网 时间:2024/06/06 12:33

表面shader:是unity自己封装处理的shader;

   unity封装了一些光照模型,可以直接使用;

Surface Shader:

  1,没有pass通道,系统自动生成;

  2,SubShader {
Tags {"RenderType"="Opaque" "Queue"="Transparent"}
LOD 200  层次细节

CGPROGRAM
// Physically based Standard lighting model, and enable shadows on all light types
#pragma surface surf Lambert alpha   //alpha透明;

// Use shader model 3.0 target, to get nicer looking lighting
#pragma target3.0

sampler2D _MainTex;

struct Input {
float2 uv_MainTex;  //注意要加uv
} ;

//half _Glossiness;
//half _Metallic;
//fixed4 _Color;

void surf (Input IN,inout SurfaceOutput o) {
// Albedo comes from a texture tinted by color
fixed4 c =tex2D (_MainTex, IN.uv_MainTex);//* _Color;
o.Albedo = c.rgb;
// Metallic and smoothness come from slider variables
//o.Metallic = _Metallic;
//o.Smoothness = _Glossiness;
o.Alpha = c.a;
}
ENDCG
}