Shader "Transparent/Alpha_Cancel" { Properties { _Color ("Main Color", Color) = (1,1,1,1) _SpecColor ("Spec Color", Color) = (1,1,1,0) _Emission ("Emissive Color", Color) = (0,0,0,0) _Shininess ("Shininess", Range (0.1, 1)) = 0.7 _MainTex ("Base (RGB) Trans (A)", 2D) = "white" {} } SubShader { //Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"} LOD 100 Alphatest Less 0.9 ZWrite On Blend SrcAlpha OneMinusSrcAlpha ColorMask RGB // Non-lightmapped Pass { Tags { "LightMode" = "Vertex" } Material { Diffuse [_Color] Ambient [_Color] Shininess [_Shininess] Specular [_SpecColor] Emission [_Emission] } Lighting On SeparateSpecular On SetTexture [_MainTex] { Combine texture * primary DOUBLE, texture * primary } } // Lightmapped Pass { Tags { "LightMode" = "VertexLM" } BindChannels { Bind "Vertex", vertex Bind "normal", normal Bind "texcoord1", texcoord0 // lightmap uses 2nd uv Bind "texcoord", texcoord1 // main uses 1st uv } SetTexture [unity_Lightmap] { matrix [unity_LightmapMatrix] constantColor [_Color] combine texture * constant } SetTexture [_MainTex] { combine texture * previous DOUBLE, texture * primary } } } }