81 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			81 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) | ||
|  | 
 | ||
|  | Shader "UsayaLib/Obsolete/SpriteMeshInstanceFade" { | ||
|  |     Properties { | ||
|  |         _Color ("Main Color", Color) = (1,1,1,1) | ||
|  |         [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {} | ||
|  |         [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0 | ||
|  |     } | ||
|  | 
 | ||
|  |     SubShader { | ||
|  |         Tags { | ||
|  |             "Queue"="Transparent" | ||
|  |             "IgnoreProjector"="True" | ||
|  |             "RenderType"="Transparent" | ||
|  |             "PreviewType"="Plane" | ||
|  |             "CanUseSpriteAtlas"="True" | ||
|  |         } | ||
|  | 
 | ||
|  |         Cull Off | ||
|  |         Lighting Off | ||
|  |         ZWrite Off | ||
|  |         Blend One OneMinusSrcAlpha | ||
|  | 
 | ||
|  |         Pass { | ||
|  |         CGPROGRAM | ||
|  |             #pragma vertex vert | ||
|  |             #pragma fragment frag | ||
|  |             #pragma multi_compile _ PIXELSNAP_ON | ||
|  |             #include "UnityCG.cginc" | ||
|  |              | ||
|  |             struct appdata_t { | ||
|  |                 float4 vertex   : POSITION; | ||
|  |                 float4 color    : COLOR; | ||
|  |                 float2 texcoord : TEXCOORD0; | ||
|  |             }; | ||
|  | 
 | ||
|  |             struct v2f { | ||
|  |                 float4 vertex   : SV_POSITION; | ||
|  |                 fixed4 color    : COLOR; | ||
|  |                 float2 texcoord  : TEXCOORD0; | ||
|  |             }; | ||
|  | 
 | ||
|  |             fixed4 _Color; | ||
|  | 
 | ||
|  |             v2f vert(appdata_t IN){ | ||
|  |                 v2f OUT; | ||
|  |                 OUT.vertex = UnityObjectToClipPos(IN.vertex); | ||
|  |                 OUT.texcoord = IN.texcoord; | ||
|  |                 OUT.color = IN.color * _Color; | ||
|  |                 #ifdef PIXELSNAP_ON | ||
|  |                 OUT.vertex = UnityPixelSnap (OUT.vertex); | ||
|  |                 #endif | ||
|  | 
 | ||
|  |                 return OUT; | ||
|  |             } | ||
|  | 
 | ||
|  |             sampler2D _MainTex; | ||
|  |             sampler2D _AlphaTex; | ||
|  |             float _AlphaSplitEnabled; | ||
|  | 
 | ||
|  |             fixed4 SampleSpriteTexture(float2 uv){ | ||
|  |                 fixed4 color = tex2D (_MainTex, uv); | ||
|  | #if UNITY_TEXTURE_ALPHASPLIT_ALLOWED | ||
|  |                 if (_AlphaSplitEnabled) | ||
|  |                     color.a = tex2D (_AlphaTex, uv).r; | ||
|  | #endif //UNITY_TEXTURE_ALPHASPLIT_ALLOWED | ||
|  | 
 | ||
|  |                 return color; | ||
|  |             } | ||
|  | 
 | ||
|  |             fixed4 frag(v2f IN) : SV_Target { | ||
|  |                 fixed4 c = SampleSpriteTexture(IN.texcoord); | ||
|  |                 c.rgb = c.rgb * min(fixed3(0.5, 0.5, 0.5), IN.color.rgb) * 2.0 + max(fixed3(0, 0, 0), IN.color.rgb - 0.5) * 2.0; | ||
|  |                 c.a *= IN.color.a; | ||
|  |                 c.rgb *= c.a; | ||
|  |                 return c; | ||
|  |             } | ||
|  |         ENDCG | ||
|  |         } | ||
|  |     } | ||
|  | } |