// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) // Simplified Alpha Blended Particle shader. Differences from regular Alpha Blended Particle one: // - no Tint color // - no Smooth particle support // - no AlphaTest // - no ColorMask Shader "UI Particles/FangdaAdd" { Properties { _TintColor ("Tint Color", Color) = (0.5,0.5,0.5,0.5) _MainTex ("Particle Texture", 2D) = "white" {} _Lin ("Lin", 2D) = "white" {} _MainColor ("MainColor", Color) = (1,1,1,1) _Num ("Num", Float ) = 3 _Speed ("Speed", Float ) = 1 _Stencil ("Stencil ID", Float) = 0 } Category { Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } Blend SrcAlpha One Cull Off Lighting Off ZWrite Off Fog { Mode Off} SubShader { Pass { Stencil { Ref [_Stencil] Comp equal Pass keep } CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" sampler2D _MainTex; fixed4 _TintColor; uniform float4 _TimeEditor; uniform sampler2D _Lin; uniform float4 _Lin_ST; uniform fixed _Num; uniform fixed _Speed; uniform fixed4 _MainColor; struct appdata_t { float4 vertex : POSITION; fixed4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_OUTPUT_STEREO }; float4 _MainTex_ST; v2f vert (appdata_t v) { v2f o; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); o.vertex = UnityObjectToClipPos(v.vertex); o.color = v.color; o.texcoord = TRANSFORM_TEX(v.texcoord,_MainTex); return o; } fixed4 frag (v2f i) : SV_Target { fixed4 _MainTex_var = tex2D(_MainTex,TRANSFORM_TEX(i.texcoord, _MainTex)); fixed4 node_7931 = _Time + _TimeEditor; fixed2 node_6369 = float2(i.texcoord.r,((i.texcoord.g*_Num)+(node_7931.g*_Speed))); fixed4 _Lin_var = tex2D(_Lin,TRANSFORM_TEX(node_6369, _Lin)); float3 emissive = (((_MainColor.rgb*_MainTex_var.rgb*_MainColor.a*_MainTex_var.a)+(_Lin_var.rgb*_Lin_var.a*_TintColor.rgb*_TintColor.a*(_MainTex_var.a*2.0*_MainTex_var.r)))*i.color.rgb*i.color.a); float3 finalColor = emissive; fixed4 finalRGBA = fixed4(finalColor,1); return finalRGBA; } ENDCG } } } }