SHARE
TWEET

White Enable Sprite Shader

Pufferfiz Apr 10th, 2014 71 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Developed by Pufferfiz and Jeff Rosenberg
  2. Shader "Sprites/White"
  3. {
  4.         Properties
  5.         {
  6.                 [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
  7.                 _Color ("Tint", Color) = (1,1,1,1)
  8.                 _AltColor ("Alt Color", Color) = (1,1,1,1)
  9.                 [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
  10.                 _AltColorAmount("Alt Color Amount", Range(0, 1)) = 0
  11.         }
  12.  
  13.         SubShader
  14.         {
  15.                 Tags
  16.                 {
  17.                         "Queue"="Transparent"
  18.                         "IgnoreProjector"="True"
  19.                         "RenderType"="Transparent"
  20.                         "PreviewType"="Plane"
  21.                         "CanUseSpriteAtlas"="True"
  22.                 }
  23.  
  24.                 Cull Off
  25.                 Lighting Off
  26.                 ZWrite Off
  27.                 Fog { Mode Off }
  28.                 Blend SrcAlpha OneMinusSrcAlpha
  29.  
  30.                 Pass
  31.                 {
  32.                 CGPROGRAM
  33.                         #pragma vertex vert
  34.                         #pragma fragment frag
  35.                         #pragma multi_compile DUMMY PIXELSNAP_ON
  36.                         #include "UnityCG.cginc"
  37.                        
  38.                         struct appdata_t
  39.                         {
  40.                                 float4 vertex   : POSITION;
  41.                                 float4 color    : COLOR;
  42.                                 float2 texcoord : TEXCOORD0;
  43.                         };
  44.  
  45.                         struct v2f
  46.                         {
  47.                                 float4 vertex   : SV_POSITION;
  48.                                 fixed4 color    : COLOR;
  49.                                 half2 texcoord  : TEXCOORD0;
  50.                         };
  51.                        
  52.                         fixed4 _Color;
  53.                         fixed4 _AltColor;
  54.                         float _AltColorAmount;
  55.  
  56.                         v2f vert(appdata_t IN)
  57.                         {
  58.                                 v2f OUT;
  59.                                 OUT.vertex = mul(UNITY_MATRIX_MVP, IN.vertex);
  60.                                 OUT.texcoord = IN.texcoord;
  61.                                 OUT.color = IN.color * _Color;
  62.                                 #ifdef PIXELSNAP_ON
  63.                                 OUT.vertex = UnityPixelSnap (OUT.vertex);
  64.                                 #endif
  65.  
  66.                                 return OUT;
  67.                         }
  68.  
  69.                         sampler2D _MainTex;
  70.  
  71.                         fixed4 frag(v2f IN) : COLOR
  72.                         {
  73.                                 fixed4 inColor = tex2D(_MainTex, IN.texcoord) * IN.color;
  74.                                 float a = inColor.a;
  75.                                 fixed4 result = lerp(inColor, _AltColor, _AltColorAmount);
  76.                                 result.a = a;
  77.                                 return result;
  78.                         }
  79.                 ENDCG
  80.                 }
  81.         }
  82. }
RAW Paste Data
Top