// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X 
Shader "URP/Effects/Particle/Test/XH_Daoguang"
{
	Properties
	{
		_MianTex("MianTex", 2D) = "white" {}
		_Color0("Color 0", Color) = (0,0,0,0)
		_Emission("Emission", Float) = 1
		[Toggle]_UseBlack("Use Black", Float) = 0
	}
	
	SubShader
	{
		
		
		Tags { "RenderType"="Opaque" }
		LOD 100

		CGINCLUDE
		#pragma target 3.0
		ENDCG
		Blend Off
		Cull Back
		ColorMask RGBA
		ZWrite On
		ZTest LEqual
		Offset 0 , 0
		
		
		
		Pass
		{
			Name "Unlit"
			
			CGPROGRAM
			#pragma vertex vert
			#pragma fragment frag
			#pragma multi_compile_instancing
			#include "UnityCG.cginc"
			

			struct appdata
			{
				float4 vertex : POSITION;
				float4 color : COLOR;
				UNITY_VERTEX_INPUT_INSTANCE_ID
				float4 ase_texcoord1 : TEXCOORD1;
				float4 ase_texcoord : TEXCOORD0;
			};
			
			struct v2f
			{
				float4 vertex : SV_POSITION;
				UNITY_VERTEX_INPUT_INSTANCE_ID
				UNITY_VERTEX_OUTPUT_STEREO
				float4 ase_texcoord : TEXCOORD0;
				float4 ase_texcoord1 : TEXCOORD1;
				float4 ase_color : COLOR;
			};

			uniform float4 _Color0;
			uniform float _UseBlack;
			uniform sampler2D _MianTex;
			uniform float _Emission;
			
			v2f vert ( appdata v )
			{
				v2f o;
				UNITY_SETUP_INSTANCE_ID(v);
				UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
				UNITY_TRANSFER_INSTANCE_ID(v, o);

				o.ase_texcoord = v.ase_texcoord1;
				o.ase_texcoord1.xy = v.ase_texcoord.xy;
				o.ase_color = v.color;
				
				//setting value to unused interpolator channels and avoid initialization warnings
				o.ase_texcoord1.zw = 0;
				float3 vertexValue =  float3(0,0,0) ;
				#if ASE_ABSOLUTE_VERTEX_POS
				v.vertex.xyz = vertexValue;
				#else
				v.vertex.xyz += vertexValue;
				#endif
				o.vertex = UnityObjectToClipPos(v.vertex);
				return o;
			}
			
			fixed4 frag (v2f i ) : SV_Target
			{
				UNITY_SETUP_INSTANCE_ID(i);
				fixed4 finalColor;
				float4 temp_cast_0 = (1.0).xxxx;
				float4 uv124 = i.ase_texcoord;
				uv124.xy = i.ase_texcoord.xy * float2( 1,1 ) + float2( 0,0 );
				float4 temp_cast_1 = (uv124.z).xxxx;
				float4 temp_cast_2 = (( uv124.z + uv124.w )).xxxx;
				float temp_output_2_0 = (2.5 + (( 1.0 + uv124.x ) - 0.0) * (1.0 - 2.5) / (1.0 - 0.0));
				float2 uv020 = i.ase_texcoord1.xy * float2( 1,1 ) + float2( 0,0 );
				float VarU21 = uv020.x;
				float VarV22 = uv020.y;
				float2 appendResult8 = (float2(( ( ( ( temp_output_2_0 * temp_output_2_0 * temp_output_2_0 * temp_output_2_0 * temp_output_2_0 ) * VarU21 ) - ( 1.0 / (1.0 + ((1.0 + (saturate( uv124.y ) - 0.0) * (0.0 - 1.0) / (1.0 - 0.0)) - 0.0) * (0.001 - 1.0) / (1.0 - 0.0)) ) ) * 0.0 ) , VarV22));
				float4 smoothstepResult25 = smoothstep( temp_cast_1 , temp_cast_2 , tex2D( _MianTex, saturate( appendResult8 ) ));
				float4 temp_output_12_0 = saturate( smoothstepResult25 );
				float4 appendResult33 = (float4((( _Color0 * lerp(temp_cast_0,temp_output_12_0,_UseBlack) * _Emission * i.ase_color )).rgb , ( _Color0.a * (temp_output_12_0).r * i.ase_color.a )));
				
				
				finalColor = appendResult33;
				return finalColor;
			}
			ENDCG
		}
	}
	CustomEditor "ASEMaterialInspector"
	
	
}
/*ASEBEGIN
Version=16400
-112;264;1888;832;97.44217;543.2372;1.383878;True;True
Node;AmplifyShaderEditor.CommentaryNode;34;-1767.609,-482.9564;Float;False;2026.365;721.7105;uv;18;24;1;2;3;20;26;4;21;28;5;27;6;22;7;8;9;40;41;;1,1,1,1;0;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;24;-1677.644,36.75404;Float;False;1;-1;4;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SaturateNode;3;-1269.089,-226.7035;Float;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleAddOpNode;1;-1309.961,-426.0664;Float;False;2;2;0;FLOAT;1;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.TFHCRemapNode;26;-784.8885,-226.1456;Float;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;4;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.TFHCRemapNode;2;-1165.747,-428.2531;Float;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;2.5;False;4;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;20;-1367.237,-35.89295;Float;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;4;-912.6527,-424.8911;Float;False;5;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;21;-1057.414,-99.4734;Float;False;VarU;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.TFHCRemapNode;28;-604.3102,-223.2136;Float;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;4;FLOAT;0.001;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleDivideOpNode;27;-417.6552,-315.4461;Float;False;2;0;FLOAT;1;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;5;-733.0021,-427.8794;Float;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleSubtractOpNode;6;-531.5313,-430.7055;Float;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;7;-276.6683,-432.9565;Float;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;22;-1053.922,3.732831;Float;False;VarV;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.DynamicAppendNode;8;-81.00417,-243.0923;Float;False;FLOAT2;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT2;0
Node;AmplifyShaderEditor.SaturateNode;9;109.2005,-243.2109;Float;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0
Node;AmplifyShaderEditor.SamplerNode;10;416.7003,-289.6466;Float;True;Property;_MianTex;MianTex;0;0;Create;True;0;0;False;0;99f9b35b55984554e90904e8cbe893e2;99f9b35b55984554e90904e8cbe893e2;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleAddOpNode;23;448.93,84.25687;Float;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SmoothstepOpNode;25;715.9656,-55.53062;Float;True;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;1,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;11;952.8829,-253.3965;Float;False;Constant;_Float2;Float 2;1;0;Create;True;0;0;False;0;1;0;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.SaturateNode;12;978.8785,-11.02823;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;14;1321.343,-75.65434;Float;False;Property;_Emission;Emission;2;0;Create;True;0;0;False;0;1;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.VertexColorNode;15;1238.793,128.8596;Float;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ToggleSwitchNode;50;1181.297,-228.1481;Float;False;Property;_UseBlack;Use Black;5;0;Create;True;0;0;False;0;0;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.ColorNode;30;1203.474,-454.4624;Float;False;Property;_Color0;Color 0;1;0;Create;True;0;0;False;0;0,0,0,0;1,1,1,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ComponentMaskNode;17;1222.801,32.95955;Float;False;True;False;False;False;1;0;COLOR;0,0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;16;1623.029,-215.1453;Float;False;4;4;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.ComponentMaskNode;19;1776.167,-217.0031;Float;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;18;1626.683,-19.90243;Float;False;3;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.DynamicAppendNode;33;2019.773,-218.2452;Float;False;FLOAT4;4;0;FLOAT3;0,0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT4;0
Node;AmplifyShaderEditor.RangedFloatNode;41;-1682.468,-292.7069;Float;False;Property;_Float1;Float 1;3;0;Create;True;0;0;False;0;1;1;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;40;-1681.819,-378.7708;Float;False;Property;_Float0;Float 0;4;0;Create;True;0;0;False;0;0;0;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;39;2198.358,-229.9174;Float;False;True;2;Float;ASEMaterialInspector;0;1;New Amplify Shader;0770190933193b94aaa3065e307002fa;True;Unlit;0;0;Unlit;2;True;0;1;False;-1;0;False;-1;0;1;False;-1;0;False;-1;True;0;False;-1;0;False;-1;True;False;True;0;False;-1;True;True;True;True;True;0;False;-1;True;False;255;False;-1;255;False;-1;255;False;-1;7;False;-1;1;False;-1;1;False;-1;1;False;-1;7;False;-1;1;False;-1;1;False;-1;1;False;-1;True;1;False;-1;True;3;False;-1;True;True;0;False;-1;0;False;-1;True;1;RenderType=Opaque=RenderType;True;2;0;False;False;False;False;False;False;False;False;False;True;0;False;0;;0;0;Standard;1;Vertex Position,InvertActionOnDeselection;1;0;1;True;False;2;0;FLOAT4;0,0,0,0;False;1;FLOAT3;0,0,0;False;0
WireConnection;3;0;24;2
WireConnection;1;1;24;1
WireConnection;26;0;3;0
WireConnection;2;0;1;0
WireConnection;4;0;2;0
WireConnection;4;1;2;0
WireConnection;4;2;2;0
WireConnection;4;3;2;0
WireConnection;4;4;2;0
WireConnection;21;0;20;1
WireConnection;28;0;26;0
WireConnection;27;1;28;0
WireConnection;5;0;4;0
WireConnection;5;1;21;0
WireConnection;6;0;5;0
WireConnection;6;1;27;0
WireConnection;7;0;6;0
WireConnection;22;0;20;2
WireConnection;8;0;7;0
WireConnection;8;1;22;0
WireConnection;9;0;8;0
WireConnection;10;1;9;0
WireConnection;23;0;24;3
WireConnection;23;1;24;4
WireConnection;25;0;10;0
WireConnection;25;1;24;3
WireConnection;25;2;23;0
WireConnection;12;0;25;0
WireConnection;50;0;11;0
WireConnection;50;1;12;0
WireConnection;17;0;12;0
WireConnection;16;0;30;0
WireConnection;16;1;50;0
WireConnection;16;2;14;0
WireConnection;16;3;15;0
WireConnection;19;0;16;0
WireConnection;18;0;30;4
WireConnection;18;1;17;0
WireConnection;18;2;15;4
WireConnection;33;0;19;0
WireConnection;33;3;18;0
WireConnection;39;0;33;0
ASEEND*/
//CHKSM=D0C7B0BB190AD267DD93591E5DE0B8E9ABA19F79