Advertisement
Guest User

Untitled

a guest
Jan 6th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
  2.  
  3.     Shader "Sprites/DefaultShadow"
  4.     {
  5.         Properties
  6.         {
  7.             [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
  8.             _Color ("Tint", Color) = (1,1,1,1)
  9.             [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
  10.             [HideInInspector] _RendererColor ("RendererColor", Color) = (1,1,1,1)
  11.             [HideInInspector] _Flip ("Flip", Vector) = (1,1,1,1)
  12.             [PerRendererData] _AlphaTex ("External Alpha", 2D) = "white" {}
  13.             [PerRendererData] _EnableExternalAlpha ("Enable External Alpha", Float) = 0
  14.             _ShadowOffset("Shadow Offset", Vector) = (4,4,0,0)
  15.             _ShadowColor("Shadow Color", Color) = (0.02, -0.02, 0, 0)
  16.         }
  17.  
  18.         SubShader
  19.         {
  20.             Tags
  21.             {
  22.                 "Queue"="Transparent"
  23.                 "IgnoreProjector"="True"
  24.                 "RenderType"="Transparent"
  25.                 "PreviewType"="Plane"
  26.                 "CanUseSpriteAtlas"="True"
  27.             }
  28.  
  29.             Cull Off
  30.             Lighting Off
  31.             ZWrite Off
  32.             Blend One OneMinusSrcAlpha
  33.  
  34.             Pass
  35.             {
  36.             CGPROGRAM
  37.                 #pragma vertex SpriteVertShadow
  38.                 #pragma fragment SpriteFragShadow
  39.                 #pragma target 2.0
  40.                 #pragma multi_compile_instancing
  41.                 #pragma multi_compile _ PIXELSNAP_ON
  42.                 #pragma multi_compile _ ETC1_EXTERNAL_ALPHA
  43.                 #include "UnitySprites.cginc"
  44.  
  45.                 fixed4 _ShadowColor;
  46.                 fixed4 _ShadowOffset;
  47.  
  48.                 v2f SpriteVertShadow(appdata_t IN)
  49.                 {
  50.                     v2f OUT;
  51.  
  52.                     UNITY_SETUP_INSTANCE_ID (IN);
  53.                     UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
  54.  
  55.                     #ifdef UNITY_INSTANCING_ENABLED
  56.                         IN.vertex.xy *= _Flip;
  57.                     #endif
  58.  
  59.                     OUT.vertex = UnityObjectToClipPos(IN.vertex + _ShadowOffset);
  60.                     OUT.texcoord = IN.texcoord;
  61.                     OUT.color = IN.color * _Color * _RendererColor;
  62.  
  63.                     #ifdef PIXELSNAP_ON
  64.                         OUT.vertex = UnityPixelSnap (OUT.vertex);
  65.                     #endif
  66.  
  67.                     return OUT;
  68.                 }
  69.  
  70.                 fixed4 SpriteFragShadow(v2f IN) : SV_Target
  71.                 {
  72.                     fixed4 c = SampleSpriteTexture(IN.texcoord) * IN.color;
  73.                     if (c.a < 0.99) discard;
  74.                     c.rgb = _ShadowColor;
  75.                     c.a = _ShadowColor.a;
  76.                     return c;
  77.                 }
  78.  
  79.             ENDCG
  80.             }
  81.  
  82.             Pass
  83.             {
  84.                 CGPROGRAM
  85.                 #pragma vertex SpriteVert
  86.                 #pragma fragment SpriteFrag
  87.                 #pragma target 2.0
  88.                 #pragma multi_compile_instancing
  89.                 #pragma multi_compile _ PIXELSNAP_ON
  90.                 #pragma multi_compile _ ETC1_EXTERNAL_ALPHA
  91.                 #include "UnitySprites.cginc"
  92.                 ENDCG
  93.             }
  94.         }
  95.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement