// Made with Amplify Shader Editor v1.9.5.1 // Available at the Unity Asset Store - http://u3d.as/y3X Shader "Soullies/CardRipple" { Properties { [HideInInspector] _AlphaCutoff("Alpha Cutoff ", Range(0, 1)) = 0.5 [HideInInspector] _EmissionColor("Emission Color", Color) = (1,1,1,1) _RippleTexture("RippleTexture", 2D) = "white" {} _Speed("Speed", Range( 0 , 10)) = 0.5 _Frequency("Frequency", Range( 0 , 10)) = 5 _WaveWidth("WaveWidth", Range( 0 , 100)) = 5 _Brightness("Brightness", Range( 0 , 10)) = 1 _NoiseScale("NoiseScale", Range( 0 , 10)) = 1 _Noise("Noise", 2D) = "white" {} _NoiseStrength("NoiseStrength", Range( 0 , 1)) = 0.25 _RippleTime("RippleTime", Range( 0 , 1)) = 0 _DisplayThreshold("DisplayThreshold", Range( 0 , 1)) = 0 [HideInInspector] _texcoord( "", 2D ) = "white" {} [HideInInspector][NoScaleOffset] unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {} [HideInInspector][NoScaleOffset] unity_LightmapsInd("unity_LightmapsInd", 2DArray) = "" {} [HideInInspector][NoScaleOffset] unity_ShadowMasks("unity_ShadowMasks", 2DArray) = "" {} } SubShader { LOD 0 Tags { "RenderPipeline"="UniversalPipeline" "RenderType"="Transparent" "Queue"="Transparent" } Cull Off HLSLINCLUDE #pragma target 3.5 #pragma prefer_hlslcc gles // ensure rendering platforms toggle list is visible #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Filtering.hlsl" ENDHLSL Pass { Name "Sprite Unlit" Tags { "LightMode"="Universal2D" } Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha ZTest LEqual ZWrite Off Offset 0 , 0 ColorMask RGBA HLSLPROGRAM #define ASE_SRP_VERSION 140011 #pragma vertex vert #pragma fragment frag #define _SURFACE_TYPE_TRANSPARENT 1 #define SHADERPASS SHADERPASS_SPRITEUNLIT #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" sampler2D _RippleTexture; sampler2D _Noise; CBUFFER_START( UnityPerMaterial ) float4 _RippleTexture_ST; float _NoiseScale; float _NoiseStrength; float _Frequency; float _Speed; float _RippleTime; float _WaveWidth; float _Brightness; float _DisplayThreshold; CBUFFER_END struct VertexInput { float4 positionOS : POSITION; float3 normal : NORMAL; float4 tangent : TANGENT; float4 uv0 : TEXCOORD0; float4 color : COLOR; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct VertexOutput { float4 positionCS : SV_POSITION; float4 texCoord0 : TEXCOORD0; float4 color : TEXCOORD1; float3 positionWS : TEXCOORD2; UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO }; #if ETC1_EXTERNAL_ALPHA TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex ); float _EnableAlphaTexture; #endif float4 _RendererColor; VertexOutput vert( VertexInput v ) { VertexOutput o = (VertexOutput)0; UNITY_SETUP_INSTANCE_ID( v ); UNITY_TRANSFER_INSTANCE_ID( v, o ); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o ); #ifdef ASE_ABSOLUTE_VERTEX_POS float3 defaultVertexValue = v.positionOS.xyz; #else float3 defaultVertexValue = float3( 0, 0, 0 ); #endif float3 vertexValue = defaultVertexValue; #ifdef ASE_ABSOLUTE_VERTEX_POS v.positionOS.xyz = vertexValue; #else v.positionOS.xyz += vertexValue; #endif v.normal = v.normal; v.tangent.xyz = v.tangent.xyz; VertexPositionInputs vertexInput = GetVertexPositionInputs( v.positionOS.xyz ); o.texCoord0 = v.uv0; o.color = v.color; o.positionCS = vertexInput.positionCS; o.positionWS = vertexInput.positionWS; return o; } half4 frag( VertexOutput IN ) : SV_Target { UNITY_SETUP_INSTANCE_ID( IN ); UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN ); float2 uv_RippleTexture = IN.texCoord0.xy * _RippleTexture_ST.xy + _RippleTexture_ST.zw; float2 temp_cast_0 = (_NoiseScale).xx; float2 texCoord27 = IN.texCoord0.xy * temp_cast_0 + float2( 0,0 ); float2 texCoord8 = IN.texCoord0.xy * float2( 1,1 ) + float2( 0,0 ); float2 temp_cast_1 = (( _NoiseStrength / 4.0 )).xx; float saferPower21 = abs( (0.0 + (cos( ( ( ( distance( ( ( tex2D( _Noise, texCoord27 ).r * _NoiseStrength ) + ( texCoord8 - temp_cast_1 ) ) , float2( 0.5,0.5 ) ) * _Frequency ) - ( _Speed * _RippleTime ) ) * PI ) ) - -1.0) * (1.0 - 0.0) / (1.0 - -1.0)) ); float temp_output_51_0 = ( _RippleTime - _DisplayThreshold ); float ifLocalVar52 = 0; if( temp_output_51_0 >= 0.0 ) ifLocalVar52 = temp_output_51_0; else ifLocalVar52 = 0.0; float4 Color = ( ( tex2D( _RippleTexture, uv_RippleTexture ) * pow( saferPower21 , _WaveWidth ) ) * ( _Brightness * ifLocalVar52 ) ); #if ETC1_EXTERNAL_ALPHA float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy ); Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture ); #endif #if defined(DEBUG_DISPLAY) SurfaceData2D surfaceData; InitializeSurfaceData(Color.rgb, Color.a, surfaceData); InputData2D inputData; InitializeInputData(IN.positionWS.xy, half2(IN.texCoord0.xy), inputData); half4 debugColor = 0; SETUP_DEBUG_DATA_2D(inputData, IN.positionWS); if (CanDebugOverrideOutputColor(surfaceData, inputData, debugColor)) { return debugColor; } #endif Color *= IN.color * _RendererColor; return Color; } ENDHLSL } Pass { Name "Sprite Unlit Forward" Tags { "LightMode"="UniversalForward" } Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha ZTest LEqual ZWrite Off Offset 0 , 0 ColorMask RGBA HLSLPROGRAM #define ASE_SRP_VERSION 140011 #pragma vertex vert #pragma fragment frag #define _SURFACE_TYPE_TRANSPARENT 1 #define SHADERPASS SHADERPASS_SPRITEFORWARD #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" sampler2D _RippleTexture; sampler2D _Noise; CBUFFER_START( UnityPerMaterial ) float4 _RippleTexture_ST; float _NoiseScale; float _NoiseStrength; float _Frequency; float _Speed; float _RippleTime; float _WaveWidth; float _Brightness; float _DisplayThreshold; CBUFFER_END struct VertexInput { float4 positionOS : POSITION; float3 normal : NORMAL; float4 tangent : TANGENT; float4 uv0 : TEXCOORD0; float4 color : COLOR; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct VertexOutput { float4 positionCS : SV_POSITION; float4 texCoord0 : TEXCOORD0; float4 color : TEXCOORD1; float3 positionWS : TEXCOORD2; UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO }; #if ETC1_EXTERNAL_ALPHA TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex ); float _EnableAlphaTexture; #endif float4 _RendererColor; VertexOutput vert( VertexInput v ) { VertexOutput o = (VertexOutput)0; UNITY_SETUP_INSTANCE_ID( v ); UNITY_TRANSFER_INSTANCE_ID( v, o ); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o ); #ifdef ASE_ABSOLUTE_VERTEX_POS float3 defaultVertexValue = v.positionOS.xyz; #else float3 defaultVertexValue = float3( 0, 0, 0 ); #endif float3 vertexValue = defaultVertexValue; #ifdef ASE_ABSOLUTE_VERTEX_POS v.positionOS.xyz = vertexValue; #else v.positionOS.xyz += vertexValue; #endif v.normal = v.normal; v.tangent.xyz = v.tangent.xyz; VertexPositionInputs vertexInput = GetVertexPositionInputs( v.positionOS.xyz ); o.texCoord0 = v.uv0; o.color = v.color; o.positionCS = vertexInput.positionCS; o.positionWS = vertexInput.positionWS; return o; } half4 frag( VertexOutput IN ) : SV_Target { UNITY_SETUP_INSTANCE_ID( IN ); UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN ); float2 uv_RippleTexture = IN.texCoord0.xy * _RippleTexture_ST.xy + _RippleTexture_ST.zw; float2 temp_cast_0 = (_NoiseScale).xx; float2 texCoord27 = IN.texCoord0.xy * temp_cast_0 + float2( 0,0 ); float2 texCoord8 = IN.texCoord0.xy * float2( 1,1 ) + float2( 0,0 ); float2 temp_cast_1 = (( _NoiseStrength / 4.0 )).xx; float saferPower21 = abs( (0.0 + (cos( ( ( ( distance( ( ( tex2D( _Noise, texCoord27 ).r * _NoiseStrength ) + ( texCoord8 - temp_cast_1 ) ) , float2( 0.5,0.5 ) ) * _Frequency ) - ( _Speed * _RippleTime ) ) * PI ) ) - -1.0) * (1.0 - 0.0) / (1.0 - -1.0)) ); float temp_output_51_0 = ( _RippleTime - _DisplayThreshold ); float ifLocalVar52 = 0; if( temp_output_51_0 >= 0.0 ) ifLocalVar52 = temp_output_51_0; else ifLocalVar52 = 0.0; float4 Color = ( ( tex2D( _RippleTexture, uv_RippleTexture ) * pow( saferPower21 , _WaveWidth ) ) * ( _Brightness * ifLocalVar52 ) ); #if ETC1_EXTERNAL_ALPHA float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy ); Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture ); #endif #if defined(DEBUG_DISPLAY) SurfaceData2D surfaceData; InitializeSurfaceData(Color.rgb, Color.a, surfaceData); InputData2D inputData; InitializeInputData(IN.positionWS.xy, half2(IN.texCoord0.xy), inputData); half4 debugColor = 0; SETUP_DEBUG_DATA_2D(inputData, IN.positionWS); if (CanDebugOverrideOutputColor(surfaceData, inputData, debugColor)) { return debugColor; } #endif Color *= IN.color * _RendererColor; return Color; } ENDHLSL } Pass { Name "SceneSelectionPass" Tags { "LightMode"="SceneSelectionPass" } Cull Off HLSLPROGRAM #define ASE_SRP_VERSION 140011 #pragma vertex vert #pragma fragment frag #define _SURFACE_TYPE_TRANSPARENT 1 #define ATTRIBUTES_NEED_NORMAL #define ATTRIBUTES_NEED_TANGENT #define FEATURES_GRAPH_VERTEX #define SHADERPASS SHADERPASS_DEPTHONLY #define SCENESELECTIONPASS 1 #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" sampler2D _RippleTexture; sampler2D _Noise; CBUFFER_START( UnityPerMaterial ) float4 _RippleTexture_ST; float _NoiseScale; float _NoiseStrength; float _Frequency; float _Speed; float _RippleTime; float _WaveWidth; float _Brightness; float _DisplayThreshold; CBUFFER_END struct VertexInput { float3 positionOS : POSITION; float3 normal : NORMAL; float4 tangent : TANGENT; float4 ase_texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct VertexOutput { float4 positionCS : SV_POSITION; float4 ase_texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; int _ObjectId; int _PassValue; VertexOutput vert(VertexInput v ) { VertexOutput o = (VertexOutput)0; UNITY_SETUP_INSTANCE_ID(v); UNITY_TRANSFER_INSTANCE_ID(v, o); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o ); o.ase_texcoord.xy = v.ase_texcoord.xy; //setting value to unused interpolator channels and avoid initialization warnings o.ase_texcoord.zw = 0; #ifdef ASE_ABSOLUTE_VERTEX_POS float3 defaultVertexValue = v.positionOS.xyz; #else float3 defaultVertexValue = float3(0, 0, 0); #endif float3 vertexValue = defaultVertexValue; #ifdef ASE_ABSOLUTE_VERTEX_POS v.positionOS.xyz = vertexValue; #else v.positionOS.xyz += vertexValue; #endif VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz); float3 positionWS = TransformObjectToWorld(v.positionOS); o.positionCS = TransformWorldToHClip(positionWS); return o; } half4 frag(VertexOutput IN ) : SV_TARGET { float2 uv_RippleTexture = IN.ase_texcoord.xy * _RippleTexture_ST.xy + _RippleTexture_ST.zw; float2 temp_cast_0 = (_NoiseScale).xx; float2 texCoord27 = IN.ase_texcoord.xy * temp_cast_0 + float2( 0,0 ); float2 texCoord8 = IN.ase_texcoord.xy * float2( 1,1 ) + float2( 0,0 ); float2 temp_cast_1 = (( _NoiseStrength / 4.0 )).xx; float saferPower21 = abs( (0.0 + (cos( ( ( ( distance( ( ( tex2D( _Noise, texCoord27 ).r * _NoiseStrength ) + ( texCoord8 - temp_cast_1 ) ) , float2( 0.5,0.5 ) ) * _Frequency ) - ( _Speed * _RippleTime ) ) * PI ) ) - -1.0) * (1.0 - 0.0) / (1.0 - -1.0)) ); float temp_output_51_0 = ( _RippleTime - _DisplayThreshold ); float ifLocalVar52 = 0; if( temp_output_51_0 >= 0.0 ) ifLocalVar52 = temp_output_51_0; else ifLocalVar52 = 0.0; float4 Color = ( ( tex2D( _RippleTexture, uv_RippleTexture ) * pow( saferPower21 , _WaveWidth ) ) * ( _Brightness * ifLocalVar52 ) ); half4 outColor = half4(_ObjectId, _PassValue, 1.0, 1.0); return outColor; } ENDHLSL } Pass { Name "ScenePickingPass" Tags { "LightMode"="Picking" } Cull Off HLSLPROGRAM #define ASE_SRP_VERSION 140011 #pragma vertex vert #pragma fragment frag #define _SURFACE_TYPE_TRANSPARENT 1 #define ATTRIBUTES_NEED_NORMAL #define ATTRIBUTES_NEED_TANGENT #define FEATURES_GRAPH_VERTEX #define SHADERPASS SHADERPASS_DEPTHONLY #define SCENEPICKINGPASS 1 #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" sampler2D _RippleTexture; sampler2D _Noise; CBUFFER_START( UnityPerMaterial ) float4 _RippleTexture_ST; float _NoiseScale; float _NoiseStrength; float _Frequency; float _Speed; float _RippleTime; float _WaveWidth; float _Brightness; float _DisplayThreshold; CBUFFER_END struct VertexInput { float3 positionOS : POSITION; float3 normal : NORMAL; float4 tangent : TANGENT; float4 ase_texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct VertexOutput { float4 positionCS : SV_POSITION; float4 ase_texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; float4 _SelectionID; VertexOutput vert(VertexInput v ) { VertexOutput o = (VertexOutput)0; UNITY_SETUP_INSTANCE_ID(v); UNITY_TRANSFER_INSTANCE_ID(v, o); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o ); o.ase_texcoord.xy = v.ase_texcoord.xy; //setting value to unused interpolator channels and avoid initialization warnings o.ase_texcoord.zw = 0; #ifdef ASE_ABSOLUTE_VERTEX_POS float3 defaultVertexValue = v.positionOS.xyz; #else float3 defaultVertexValue = float3(0, 0, 0); #endif float3 vertexValue = defaultVertexValue; #ifdef ASE_ABSOLUTE_VERTEX_POS v.positionOS.xyz = vertexValue; #else v.positionOS.xyz += vertexValue; #endif VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS.xyz); float3 positionWS = TransformObjectToWorld(v.positionOS); o.positionCS = TransformWorldToHClip(positionWS); return o; } half4 frag(VertexOutput IN ) : SV_TARGET { float2 uv_RippleTexture = IN.ase_texcoord.xy * _RippleTexture_ST.xy + _RippleTexture_ST.zw; float2 temp_cast_0 = (_NoiseScale).xx; float2 texCoord27 = IN.ase_texcoord.xy * temp_cast_0 + float2( 0,0 ); float2 texCoord8 = IN.ase_texcoord.xy * float2( 1,1 ) + float2( 0,0 ); float2 temp_cast_1 = (( _NoiseStrength / 4.0 )).xx; float saferPower21 = abs( (0.0 + (cos( ( ( ( distance( ( ( tex2D( _Noise, texCoord27 ).r * _NoiseStrength ) + ( texCoord8 - temp_cast_1 ) ) , float2( 0.5,0.5 ) ) * _Frequency ) - ( _Speed * _RippleTime ) ) * PI ) ) - -1.0) * (1.0 - 0.0) / (1.0 - -1.0)) ); float temp_output_51_0 = ( _RippleTime - _DisplayThreshold ); float ifLocalVar52 = 0; if( temp_output_51_0 >= 0.0 ) ifLocalVar52 = temp_output_51_0; else ifLocalVar52 = 0.0; float4 Color = ( ( tex2D( _RippleTexture, uv_RippleTexture ) * pow( saferPower21 , _WaveWidth ) ) * ( _Brightness * ifLocalVar52 ) ); half4 outColor = _SelectionID; return outColor; } ENDHLSL } } CustomEditor "ASEMaterialInspector" Fallback "Hidden/InternalErrorShader" } /*ASEBEGIN Version=19501 Node;AmplifyShaderEditor.RangedFloatNode;28;-1760,-976;Inherit;False;Property;_NoiseScale;NoiseScale;5;0;Create;True;0;0;0;False;0;False;1;1;0;10;0;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;30;-1344,-624;Inherit;False;Property;_NoiseStrength;NoiseStrength;7;0;Create;True;0;0;0;False;0;False;0.25;0.25;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.TextureCoordinatesNode;27;-1472,-992;Inherit;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.TextureCoordinatesNode;8;-944,-608;Inherit;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.SimpleDivideOpNode;37;-896,-400;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;4;False;1;FLOAT;0 Node;AmplifyShaderEditor.SamplerNode;35;-1216,-976;Inherit;True;Property;_Noise;Noise;6;0;Create;True;0;0;0;False;0;False;-1;None;e3c6de4c0b96a214c95637cc4a6bc0ca;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;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;6;FLOAT;0;False;7;SAMPLERSTATE;;False;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5 Node;AmplifyShaderEditor.SimpleSubtractOpNode;38;-672,-528;Inherit;False;2;0;FLOAT2;0,0;False;1;FLOAT;0.25;False;1;FLOAT2;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;32;-896,-864;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.Vector2Node;10;-624,-256;Inherit;False;Constant;_Vector0;Vector 0;5;0;Create;True;0;0;0;False;0;False;0.5,0.5;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2 Node;AmplifyShaderEditor.SimpleAddOpNode;33;-464,-576;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT2;0,0;False;1;FLOAT2;0 Node;AmplifyShaderEditor.RangedFloatNode;3;-624,-96;Inherit;False;Property;_Frequency;Frequency;2;0;Create;True;0;0;0;False;0;False;5;1;0;10;0;1;FLOAT;0 Node;AmplifyShaderEditor.DistanceOpNode;9;-320,-464;Inherit;False;2;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;2;-688,112;Inherit;False;Property;_Speed;Speed;1;0;Create;True;0;0;0;False;0;False;0.5;1;0;10;0;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;43;-704,208;Inherit;False;Property;_RippleTime;RippleTime;8;0;Create;True;0;0;0;False;0;False;0;0.39;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;11;-352,112;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;12;-160,-384;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleSubtractOpNode;13;-96,-160;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.PiNode;46;-160,208;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;45;16,64;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;3.141593;False;1;FLOAT;0 Node;AmplifyShaderEditor.CosOpNode;44;176,-96;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;54;-576,528;Inherit;False;Property;_DisplayThreshold;DisplayThreshold;9;0;Create;True;0;0;0;False;0;False;0;0.25;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleSubtractOpNode;51;-227.9152,419.3673;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0.25;False;1;FLOAT;0 Node;AmplifyShaderEditor.TFHCRemapNode;42;352,-96;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;-1;False;2;FLOAT;1;False;3;FLOAT;0;False;4;FLOAT;1;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;4;272,176;Inherit;False;Property;_WaveWidth;WaveWidth;3;0;Create;True;0;0;0;False;0;False;5;25;0;100;0;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode;53;-240,640;Inherit;False;Constant;_Zero;Zero;9;0;Create;True;0;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0 Node;AmplifyShaderEditor.ConditionalIfNode;52;-16,464;Inherit;False;False;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.SamplerNode;1;400,-416;Inherit;True;Property;_RippleTexture;RippleTexture;0;0;Create;True;0;0;0;False;0;False;-1;e3c6de4c0b96a214c95637cc4a6bc0ca;8c0cb98ea0c53c846bf6fc8fe819b4f2;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;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;6;FLOAT;0;False;7;SAMPLERSTATE;;False;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5 Node;AmplifyShaderEditor.RangedFloatNode;5;272,272;Inherit;False;Property;_Brightness;Brightness;4;0;Create;True;0;0;0;False;0;False;1;2;0;10;0;1;FLOAT;0 Node;AmplifyShaderEditor.PowerNode;21;624,-48;Inherit;False;True;2;0;FLOAT;0;False;1;FLOAT;1;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;22;768,-208;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;48;736,256;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode;23;923.7971,-100.083;Inherit;True;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0 Node;AmplifyShaderEditor.PowerNode;50;336,400;Inherit;False;True;2;0;FLOAT;0;False;1;FLOAT;2;False;1;FLOAT;0 Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;16;272,-80;Float;False;False;-1;2;ASEMaterialInspector;0;15;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit Forward;0;1;Sprite Unlit Forward;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalForward;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;17;272,-80;Float;False;False;-1;2;ASEMaterialInspector;0;15;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;SceneSelectionPass;0;2;SceneSelectionPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=SceneSelectionPass;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;18;272,-80;Float;False;False;-1;2;ASEMaterialInspector;0;15;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;ScenePickingPass;0;3;ScenePickingPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=Picking;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;15;1152,-144;Float;False;True;-1;2;ASEMaterialInspector;0;15;Soullies/CardRipple;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit;0;0;Sprite Unlit;4;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;3;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=Universal2D;False;False;0;Hidden/InternalErrorShader;0;0;Standard;3;Vertex Position;1;0;Debug Display;0;0;External Alpha;0;0;0;4;True;True;True;True;False;;False;0 WireConnection;27;0;28;0 WireConnection;37;0;30;0 WireConnection;35;1;27;0 WireConnection;38;0;8;0 WireConnection;38;1;37;0 WireConnection;32;0;35;1 WireConnection;32;1;30;0 WireConnection;33;0;32;0 WireConnection;33;1;38;0 WireConnection;9;0;33;0 WireConnection;9;1;10;0 WireConnection;11;0;2;0 WireConnection;11;1;43;0 WireConnection;12;0;9;0 WireConnection;12;1;3;0 WireConnection;13;0;12;0 WireConnection;13;1;11;0 WireConnection;45;0;13;0 WireConnection;45;1;46;0 WireConnection;44;0;45;0 WireConnection;51;0;43;0 WireConnection;51;1;54;0 WireConnection;42;0;44;0 WireConnection;52;0;51;0 WireConnection;52;2;51;0 WireConnection;52;3;51;0 WireConnection;52;4;53;0 WireConnection;21;0;42;0 WireConnection;21;1;4;0 WireConnection;22;0;1;0 WireConnection;22;1;21;0 WireConnection;48;0;5;0 WireConnection;48;1;52;0 WireConnection;23;0;22;0 WireConnection;23;1;48;0 WireConnection;50;0;52;0 WireConnection;15;1;23;0 ASEEND*/ //CHKSM=0AFE12BA12EA2CCA1DA7962D0BC459545E89E63C