Support All : light probe, 透贴剔除(clip) , 中枪散红。。

来源:互联网 发布:angry bird go要网络吗 编辑:程序博客网 时间:2024/06/07 18:08
Shader "Custom/SupportAll" {
    Properties {
      _MainTex ("Texture"2D) = "white" {}
      _AdjustColor("Adjust Color",Color)=(0,0,0,1)
        _Pow ("Pow"Range(7.0,10.0)) = 8.0
        _Cutoff ("Alpha cutoff"Range(0,1)) = 0.5
    }
    SubShader {
      Tags { "RenderType" = "Opaque" }
      Cull Off
      CGPROGRAM
      #pragma surface surf Lambert vertex:vert
      float4 _AdjustColor;
      float _Pow;
      float _Cutoff;
      struct Input {
          float2 uv_MainTex;
          //float3 customColor;
          float amount:TEXCOORD1;
      };
      void vert (inout appdata_full vout Input o) {
          UNITY_INITIALIZE_OUTPUT(Input,o);
          float3 nm;
          nm = mul (UNITY_MATRIX_IT_MVfloat4(v.normal,0)).xyz;
          o.amount =  saturate((nm.x*nm.x + nm.y*nm.y - nm.z*nm.z*0.2));
          //o.customColor = abs(v.normal);
          o.amount =pow(o.amount,_Pow);
      }
      sampler2D _MainTex;
      void surf (Input INinout SurfaceOutput o) {
              fixed4 f4=tex2D (_MainTexIN.uv_MainTex);
          o.Albedo = f4.rgb;
          o.Albedo=lerp(f4.rgb,_AdjustColor.rgb,IN.amount);
          o.Alpha=f4.a;
          clip(o.Alpha-_Cutoff);
        //  o.Albedo *= IN.customColor;
      }
      ENDCG
    } 
    Fallback "Diffuse"
  }

0 0