1881 lines
99 KiB
GLSL
1881 lines
99 KiB
GLSL
// Made with Amplify Shader Editor v1.9.2.2
|
|
// Available at the Unity Asset Store - http://u3d.as/y3X
|
|
Shader "BaseASE/Sprite/Lit/Default"
|
|
{
|
|
Properties
|
|
{
|
|
[HideInInspector] _EmissionColor("Emission Color", Color) = (1,1,1,1)
|
|
[HideInInspector] _AlphaCutoff("Alpha Cutoff ", Range(0, 1)) = 0.5
|
|
[Toggle][Main(z1,_KEYWORD,on,on)]_z1_MainTex("主贴图", Float) = 1
|
|
[HDR][Sub(z1)]_MainColor("主颜色", Color) = (1,1,1,1)
|
|
[Sub(z1)]_MainTex("主贴图", 2D) = "white" {}
|
|
[HDR][Sub(z1)]_LerpColor("替换颜色", Color) = (1,1,1,0)
|
|
[Sub(z1)]_H("主贴图色相", Range( -1 , 1)) = 0
|
|
[Sub(z1)]_S("主贴图饱和度", Range( -1 , 1)) = 0
|
|
[Sub(z1)]_V("主贴图明度", Range( -1 , 1)) = 0
|
|
[Toggle][SubToggle(z1)]_HorizontalFlip("主贴图水平翻转", Float) = 0
|
|
[Toggle][SubToggle(z1)]_VerticalFlip("主贴图垂直翻转", Float) = 0
|
|
[Toggle][SubToggle(z1)]_UVScaleType("主贴图UV从中心缩放", Float) = 0
|
|
[Sub(z1)]_UVScale("主贴图UV缩放值", Range( 0 , 10)) = 1
|
|
[Sub(z1)]_OffsetSpeed("主贴图偏移速度XY", Vector) = (0,0,0,0)
|
|
[Sub(z1)]_Pivot("主贴图锚点", Vector) = (0.5,0.5,0,0)
|
|
[Sub(z1)]_Angle("主贴图旋转角度", Range( 0 , 360)) = 360
|
|
[Normal][Sub(z1)]_NormalMap("法线贴图", 2D) = "bump" {}
|
|
[Sub(z1)]_NormalIntensity("法线强度", Float) = 1
|
|
[Toggle][Main(z6,_KEYWORD,on,on)]_z5_Flow("扰动", Float) = 0
|
|
[Sub(z6)]_FlowTex("扰动贴图", 2D) = "white" {}
|
|
[Sub(z6)]_FlowIntensity("扰动强度", Float) = 0.1
|
|
[Sub(z6)]_FlowOffsetSpeed("扰动贴图偏移速度XY", Vector) = (0,0,0,0)
|
|
[Toggle][SubToggle(z6)]_FlowPolar("扰动贴图极坐标", Float) = 0
|
|
[Sub(z6)]_FlowPolarUV("扰动贴图极坐标UV", Vector) = (1,1,0,0)
|
|
[Sub(z6)]_FlowPolarPivot("扰动贴图极坐标锚点", Vector) = (0.5,0.5,0,0)
|
|
[Toggle][SubToggle(z6)]_FlowMask("扰动遮罩", Float) = 0
|
|
[Sub(z6)]_FlowMaskTex("扰动遮罩贴图", 2D) = "white" {}
|
|
[KeywordEnum(R,A)] _FlowMaskChannel("扰动遮罩贴图使用通道", Float) = 0
|
|
[Toggle][Main(z5,_KEYWORD,on,on)]_z6_Mask("遮罩", Float) = 0
|
|
[Sub(z6)]_MaskTex("遮罩贴图", 2D) = "white" {}
|
|
[Sub(z5)]_MaskUVScale("遮罩贴图UV缩放值", Range( 0 , 10)) = 1
|
|
[Sub(z5)]_MaskOffsetSpeed("遮罩贴图偏移速度", Vector) = (0,0,0,0)
|
|
[Sub(z5)]_MaskPivot("遮罩贴图锚点", Vector) = (0.5,0.5,0,0)
|
|
[Sub(z5)]_MaskAngle("遮罩贴图旋转角度", Range( 0 , 360)) = 0
|
|
[KeywordEnum(R,A)] _MaskChannel("遮罩贴图使用通道", Float) = 1
|
|
[Toggle][Main(z4,_KEYWORD,on,on)]_z4_Dissolve("溶解", Float) = 0
|
|
[HDR][Sub(z4)]_DissolveEdgeColor("溶解亮边颜色", Color) = (0,0,0,1)
|
|
[Sub(z4)]_DissolveTex("溶解贴图", 2D) = "white" {}
|
|
[Toggle][SubToggle(z4)]_SoftDissolve("软溶解", Float) = 0
|
|
[Sub(z4)]_DissolveTexIntensity("溶解贴图强度", Float) = 1
|
|
[Toggle][SubToggle(z4)]_DissolveWorldUV("溶解使用世界UV", Float) = 0
|
|
[Sub(z4)]_DissolveUVScale("溶解贴图UV尺寸", Vector) = (1,1,0,0)
|
|
[Sub(z4)]_DissolveEdgeWidth("溶解亮边宽度", Range( 0 , 1)) = 0
|
|
[Sub(z4)]qw("溶解程度", Range( 0 , 1)) = 0
|
|
[Sub(z4)]_DissolvePivotX("水平方向溶解锚点", Range( 0 , 1)) = 0.5
|
|
[Sub(z4)]_DissolvePivotY("垂直方向溶解锚点", Range( 0 , 1)) = 0.5
|
|
[KeywordEnum(Off,X_Direction,Y_Direction)] _DissolveDirection("溶解方向", Float) = 0
|
|
[Toggle][Main(z9,_KEYWORD,on,on)]_z9_Glow("自发光", Float) = 0
|
|
[HDR][Sub(z9)]_GlowColor("自发光颜色", Color) = (1,1,1,1)
|
|
[Sub(z9)]_GlowTex("自发光贴图", 2D) = "white" {}
|
|
[Sub(z9)]_GlowOffsetSpeed("自发光贴图偏移速度", Vector) = (0,0,0,0)
|
|
[KeywordEnum(R,A)] _GlowChannel("发光贴图使用通道", Float) = 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" "UniversalMaterialType"="Lit" "ShaderGraphShader"="true" }
|
|
|
|
Cull Off
|
|
HLSLINCLUDE
|
|
#pragma target 3.0
|
|
#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 Lit"
|
|
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
|
|
|
|
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_0
|
|
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_1
|
|
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_2
|
|
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_3
|
|
|
|
#define _SURFACE_TYPE_TRANSPARENT 1
|
|
|
|
#define SHADERPASS SHADERPASS_SPRITELIT
|
|
#define SHADERPASS_SPRITELIT
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.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.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/LightingUtility.hlsl"
|
|
|
|
#if USE_SHAPE_LIGHT_TYPE_0
|
|
SHAPE_LIGHT(0)
|
|
#endif
|
|
|
|
#if USE_SHAPE_LIGHT_TYPE_1
|
|
SHAPE_LIGHT(1)
|
|
#endif
|
|
|
|
#if USE_SHAPE_LIGHT_TYPE_2
|
|
SHAPE_LIGHT(2)
|
|
#endif
|
|
|
|
#if USE_SHAPE_LIGHT_TYPE_3
|
|
SHAPE_LIGHT(3)
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/CombinedShapeLightShared.hlsl"
|
|
|
|
#define ASE_NEEDS_FRAG_POSITION
|
|
#pragma shader_feature_local _GLOWCHANNEL_R _GLOWCHANNEL_A
|
|
#pragma shader_feature_local _FLOWMASKCHANNEL_R _FLOWMASKCHANNEL_A
|
|
#pragma shader_feature_local _DISSOLVEDIRECTION_OFF _DISSOLVEDIRECTION_X_DIRECTION _DISSOLVEDIRECTION_Y_DIRECTION
|
|
#pragma shader_feature_local _MASKCHANNEL_R _MASKCHANNEL_A
|
|
|
|
|
|
sampler2D _GlowTex;
|
|
sampler2D _MainTex;
|
|
sampler2D _FlowTex;
|
|
sampler2D _FlowMaskTex;
|
|
sampler2D _DissolveTex;
|
|
sampler2D _MaskTex;
|
|
sampler2D _NormalMap;
|
|
CBUFFER_START( UnityPerMaterial )
|
|
float4 _GlowColor;
|
|
float4 _DissolveEdgeColor;
|
|
float4 _NormalMap_ST;
|
|
float4 _FlowMaskTex_ST;
|
|
float4 _LerpColor;
|
|
float4 _MaskTex_ST;
|
|
float4 _FlowTex_ST;
|
|
float4 _MainColor;
|
|
float4 _GlowTex_ST;
|
|
float4 _MainTex_ST;
|
|
float4 _DissolveTex_ST;
|
|
float2 _Pivot;
|
|
float2 _OffsetSpeed;
|
|
float2 _FlowOffsetSpeed;
|
|
float2 _DissolveUVScale;
|
|
float2 _FlowPolarPivot;
|
|
float2 _FlowPolarUV;
|
|
float2 _MaskOffsetSpeed;
|
|
float2 _MaskPivot;
|
|
float2 _GlowOffsetSpeed;
|
|
float _DissolveWorldUV;
|
|
float _DissolveTexIntensity;
|
|
float _DissolvePivotX;
|
|
float _SoftDissolve;
|
|
float _MaskAngle;
|
|
float _DissolveEdgeWidth;
|
|
float _MaskUVScale;
|
|
float _z4_Dissolve;
|
|
float _DissolvePivotY;
|
|
float _z6_Mask;
|
|
float _H;
|
|
float _z1_MainTex;
|
|
float _V;
|
|
float _S;
|
|
float _FlowMask;
|
|
float _z5_Flow;
|
|
float _FlowIntensity;
|
|
float _FlowPolar;
|
|
float _Angle;
|
|
float _VerticalFlip;
|
|
float _HorizontalFlip;
|
|
float _UVScaleType;
|
|
float _UVScale;
|
|
float _z9_Glow;
|
|
float qw;
|
|
float _NormalIntensity;
|
|
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;
|
|
float4 screenPosition : TEXCOORD2;
|
|
float3 positionWS : TEXCOORD3;
|
|
float4 ase_color : COLOR;
|
|
float4 ase_texcoord4 : TEXCOORD4;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
UNITY_VERTEX_OUTPUT_STEREO
|
|
};
|
|
|
|
#if ETC1_EXTERNAL_ALPHA
|
|
TEXTURE2D(_AlphaTex); SAMPLER(sampler_AlphaTex);
|
|
float _EnableAlphaTexture;
|
|
#endif
|
|
|
|
float3 HSVToRGB( float3 c )
|
|
{
|
|
float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 );
|
|
float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www );
|
|
return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y );
|
|
}
|
|
|
|
float3 RGBToHSV(float3 c)
|
|
{
|
|
float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) );
|
|
float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) );
|
|
float d = q.x - min( q.w, q.y );
|
|
float e = 1.0e-10;
|
|
return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
}
|
|
|
|
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_color = v.color;
|
|
o.ase_texcoord4 = v.positionOS;
|
|
#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.screenPosition = vertexInput.positionNDC;
|
|
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 );
|
|
float3 positionWS = IN.positionWS.xyz;
|
|
|
|
float2 uv_GlowTex = IN.texCoord0.xy * _GlowTex_ST.xy + _GlowTex_ST.zw;
|
|
float2 panner545 = ( 1.0 * _Time.y * _GlowOffsetSpeed + uv_GlowTex);
|
|
float4 tex2DNode546 = tex2D( _GlowTex, panner545 );
|
|
#if defined(_GLOWCHANNEL_R)
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#elif defined(_GLOWCHANNEL_A)
|
|
float staticSwitch548 = tex2DNode546.a;
|
|
#else
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#endif
|
|
float4 lerpResult551 = lerp( float4( 0,0,0,0 ) , ( _GlowColor * staticSwitch548 ) , _z9_Glow);
|
|
float2 uv_MainTex = IN.texCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
|
|
float2 lerpResult412 = lerp( (uv_MainTex*_UVScale + 0.0) , ( ( uv_MainTex * _UVScale ) + -( _UVScale * 0.5 ) + 0.5 ) , _UVScaleType);
|
|
float2 panner414 = ( 1.0 * _Time.y * _OffsetSpeed + lerpResult412);
|
|
float temp_output_83_0 = (panner414).x;
|
|
float lerpResult445 = lerp( temp_output_83_0 , ( 1.0 - temp_output_83_0 ) , _HorizontalFlip);
|
|
float temp_output_82_0 = (panner414).y;
|
|
float lerpResult447 = lerp( temp_output_82_0 , ( 1.0 - temp_output_82_0 ) , _VerticalFlip);
|
|
float2 appendResult90 = (float2(lerpResult445 , lerpResult447));
|
|
float cos1_g53 = cos( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g53 = sin( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g53 = mul( appendResult90 - _Pivot , float2x2( cos1_g53 , -sin1_g53 , sin1_g53 , cos1_g53 )) + _Pivot;
|
|
float2 temp_output_421_0 = rotator1_g53;
|
|
float2 uv_FlowTex = IN.texCoord0.xy * _FlowTex_ST.xy + _FlowTex_ST.zw;
|
|
float2 temp_output_427_0 = ( float2( 0,0 ) + uv_FlowTex + (0) );
|
|
float2 CenteredUV15_g52 = ( temp_output_427_0 - _FlowPolarPivot );
|
|
float2 break17_g52 = CenteredUV15_g52;
|
|
float2 appendResult23_g52 = (float2(( length( CenteredUV15_g52 ) * _FlowPolarUV.x * 2.0 ) , ( atan2( break17_g52.x , break17_g52.y ) * ( 1.0 / TWO_PI ) * _FlowPolarUV.y )));
|
|
float2 lerpResult429 = lerp( temp_output_427_0 , appendResult23_g52 , _FlowPolar);
|
|
float2 panner430 = ( 1.0 * _Time.y * _FlowOffsetSpeed + lerpResult429);
|
|
float2 temp_cast_0 = (saturate( tex2D( _FlowTex, panner430 ).r )).xx;
|
|
float2 lerpResult432 = lerp( temp_output_421_0 , temp_cast_0 , _FlowIntensity);
|
|
float2 uv_FlowMaskTex = IN.texCoord0.xy * _FlowMaskTex_ST.xy + _FlowMaskTex_ST.zw;
|
|
float4 tex2DNode554 = tex2D( _FlowMaskTex, uv_FlowMaskTex );
|
|
#if defined(_FLOWMASKCHANNEL_R)
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#elif defined(_FLOWMASKCHANNEL_A)
|
|
float staticSwitch556 = tex2DNode554.a;
|
|
#else
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#endif
|
|
float lerpResult563 = lerp( 1.0 , staticSwitch556 , _FlowMask);
|
|
float2 lerpResult441 = lerp( temp_output_421_0 , lerpResult432 , ( _z5_Flow * lerpResult563 ));
|
|
float4 tex2DNode1 = tex2D( _MainTex, lerpResult441 );
|
|
float3 hsvTorgb1_g15 = RGBToHSV( (tex2DNode1).rgb );
|
|
float clampResult8_g15 = clamp( ( hsvTorgb1_g15.y + _S ) , 0.0 , 1.0 );
|
|
float3 hsvTorgb9_g15 = HSVToRGB( float3(( hsvTorgb1_g15.x + _H ),clampResult8_g15,( hsvTorgb1_g15.z + _V )) );
|
|
float4 appendResult124 = (float4(hsvTorgb9_g15 , (tex2DNode1).a));
|
|
float4 lerpResult443 = lerp( float4( 1,1,1,1 ) , ( IN.ase_color * _MainColor * appendResult124 ) , _z1_MainTex);
|
|
float4 MainTex537 = lerpResult443;
|
|
float temp_output_494_0 = (-0.1 + (qw - 0.0) * (1.05 - -0.1) / (1.0 - 0.0));
|
|
float2 uv_DissolveTex = IN.texCoord0.xy * _DissolveTex_ST.xy + _DissolveTex_ST.zw;
|
|
float2 appendResult476 = (float2(IN.ase_texcoord4.xyz.x , IN.ase_texcoord4.xyz.y));
|
|
float2 lerpResult480 = lerp( uv_DissolveTex , appendResult476 , _DissolveWorldUV);
|
|
float lerpResult490 = lerp( 0.5 , tex2D( _DissolveTex, ( _DissolveUVScale * lerpResult480 ) ).r , _DissolveTexIntensity);
|
|
float2 texCoord464 = IN.texCoord0.xy * float2( 1,1 ) + float2( 0,0 );
|
|
#if defined(_DISSOLVEDIRECTION_OFF)
|
|
float staticSwitch478 = 0.0;
|
|
#elif defined(_DISSOLVEDIRECTION_X_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.x , _DissolvePivotX ) / (1.0 + (abs( (-1.0 + (_DissolvePivotX - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#elif defined(_DISSOLVEDIRECTION_Y_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.y , _DissolvePivotY ) / (1.0 + (abs( (-1.0 + (_DissolvePivotY - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#else
|
|
float staticSwitch478 = 0.0;
|
|
#endif
|
|
float DissolveDirection484 = saturate( staticSwitch478 );
|
|
float temp_output_496_0 = ( lerpResult490 + DissolveDirection484 );
|
|
float temp_output_498_0 = ( temp_output_496_0 + _DissolveEdgeWidth );
|
|
float temp_output_501_0 = step( temp_output_494_0 , temp_output_498_0 );
|
|
float temp_output_503_0 = ( temp_output_501_0 - step( temp_output_494_0 , temp_output_496_0 ) );
|
|
float4 lerpResult507 = lerp( MainTex537 , ( _DissolveEdgeColor * temp_output_503_0 ) , temp_output_503_0);
|
|
float4 DissolveRGBChannel508 = lerpResult507;
|
|
float4 lerpResult539 = lerp( MainTex537 , DissolveRGBChannel508 , _z4_Dissolve);
|
|
float4 lerpResult565 = lerp( ( lerpResult551 + float4( (lerpResult539).rgb , 0.0 ) ) , _LerpColor , _LerpColor.a);
|
|
float2 uv_MaskTex = IN.texCoord0.xy * _MaskTex_ST.xy + _MaskTex_ST.zw;
|
|
float2 panner519 = ( 1.0 * _Time.y * _MaskOffsetSpeed + ( ( uv_MaskTex * _MaskUVScale ) + -( _MaskUVScale * 0.5 ) + 0.5 ));
|
|
float cos1_g64 = cos( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g64 = sin( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g64 = mul( panner519 - _MaskPivot , float2x2( cos1_g64 , -sin1_g64 , sin1_g64 , cos1_g64 )) + _MaskPivot;
|
|
float4 tex2DNode521 = tex2D( _MaskTex, rotator1_g64 );
|
|
#if defined(_MASKCHANNEL_R)
|
|
float staticSwitch522 = tex2DNode521.r;
|
|
#elif defined(_MASKCHANNEL_A)
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#else
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#endif
|
|
float lerpResult523 = lerp( 1.0 , staticSwitch522 , _z6_Mask);
|
|
float smoothstepResult509 = smoothstep( temp_output_498_0 , 0.0 , temp_output_494_0);
|
|
float lerpResult511 = lerp( temp_output_501_0 , smoothstepResult509 , _SoftDissolve);
|
|
float DissolveAlphaChannel512 = lerpResult511;
|
|
float lerpResult541 = lerp( 1.0 , DissolveAlphaChannel512 , _z4_Dissolve);
|
|
float4 appendResult536 = (float4(lerpResult565.rgb , ( (lerpResult539).a * lerpResult523 * lerpResult541 )));
|
|
|
|
float2 uv_NormalMap = IN.texCoord0.xy * _NormalMap_ST.xy + _NormalMap_ST.zw;
|
|
float3 unpack567 = UnpackNormalScale( tex2D( _NormalMap, uv_NormalMap ), _NormalIntensity );
|
|
unpack567.z = lerp( 1, unpack567.z, saturate(_NormalIntensity) );
|
|
|
|
float4 Color = appendResult536;
|
|
float4 Mask = float4(1,1,1,1);
|
|
float3 Normal = unpack567;
|
|
|
|
#if ETC1_EXTERNAL_ALPHA
|
|
float4 alpha = SAMPLE_TEXTURE2D(_AlphaTex, sampler_AlphaTex, IN.texCoord0.xy);
|
|
Color.a = lerp ( Color.a, alpha.r, _EnableAlphaTexture);
|
|
#endif
|
|
|
|
Color *= IN.color;
|
|
|
|
SurfaceData2D surfaceData;
|
|
InitializeSurfaceData(Color.rgb, Color.a, Mask, surfaceData);
|
|
InputData2D inputData;
|
|
InitializeInputData(IN.texCoord0.xy, half2(IN.screenPosition.xy / IN.screenPosition.w), inputData);
|
|
SETUP_DEBUG_DATA_2D(inputData, positionWS);
|
|
return CombinedShapeLightShared(surfaceData, inputData);
|
|
}
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
|
|
Pass
|
|
{
|
|
|
|
Name "Sprite Normal"
|
|
Tags { "LightMode"="NormalsRendering" }
|
|
|
|
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_SPRITENORMAL
|
|
|
|
#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/Shaders/2D/Include/NormalsRenderingShared.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl"
|
|
|
|
#define ASE_NEEDS_FRAG_COLOR
|
|
#define ASE_NEEDS_FRAG_POSITION
|
|
#pragma shader_feature_local _GLOWCHANNEL_R _GLOWCHANNEL_A
|
|
#pragma shader_feature_local _FLOWMASKCHANNEL_R _FLOWMASKCHANNEL_A
|
|
#pragma shader_feature_local _DISSOLVEDIRECTION_OFF _DISSOLVEDIRECTION_X_DIRECTION _DISSOLVEDIRECTION_Y_DIRECTION
|
|
#pragma shader_feature_local _MASKCHANNEL_R _MASKCHANNEL_A
|
|
|
|
|
|
sampler2D _GlowTex;
|
|
sampler2D _MainTex;
|
|
sampler2D _FlowTex;
|
|
sampler2D _FlowMaskTex;
|
|
sampler2D _DissolveTex;
|
|
sampler2D _MaskTex;
|
|
sampler2D _NormalMap;
|
|
CBUFFER_START( UnityPerMaterial )
|
|
float4 _GlowColor;
|
|
float4 _DissolveEdgeColor;
|
|
float4 _NormalMap_ST;
|
|
float4 _FlowMaskTex_ST;
|
|
float4 _LerpColor;
|
|
float4 _MaskTex_ST;
|
|
float4 _FlowTex_ST;
|
|
float4 _MainColor;
|
|
float4 _GlowTex_ST;
|
|
float4 _MainTex_ST;
|
|
float4 _DissolveTex_ST;
|
|
float2 _Pivot;
|
|
float2 _OffsetSpeed;
|
|
float2 _FlowOffsetSpeed;
|
|
float2 _DissolveUVScale;
|
|
float2 _FlowPolarPivot;
|
|
float2 _FlowPolarUV;
|
|
float2 _MaskOffsetSpeed;
|
|
float2 _MaskPivot;
|
|
float2 _GlowOffsetSpeed;
|
|
float _DissolveWorldUV;
|
|
float _DissolveTexIntensity;
|
|
float _DissolvePivotX;
|
|
float _SoftDissolve;
|
|
float _MaskAngle;
|
|
float _DissolveEdgeWidth;
|
|
float _MaskUVScale;
|
|
float _z4_Dissolve;
|
|
float _DissolvePivotY;
|
|
float _z6_Mask;
|
|
float _H;
|
|
float _z1_MainTex;
|
|
float _V;
|
|
float _S;
|
|
float _FlowMask;
|
|
float _z5_Flow;
|
|
float _FlowIntensity;
|
|
float _FlowPolar;
|
|
float _Angle;
|
|
float _VerticalFlip;
|
|
float _HorizontalFlip;
|
|
float _UVScaleType;
|
|
float _UVScale;
|
|
float _z9_Glow;
|
|
float qw;
|
|
float _NormalIntensity;
|
|
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 normalWS : TEXCOORD2;
|
|
float4 tangentWS : TEXCOORD3;
|
|
float3 bitangentWS : TEXCOORD4;
|
|
float4 ase_texcoord5 : TEXCOORD5;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
UNITY_VERTEX_OUTPUT_STEREO
|
|
};
|
|
|
|
float3 HSVToRGB( float3 c )
|
|
{
|
|
float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 );
|
|
float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www );
|
|
return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y );
|
|
}
|
|
|
|
float3 RGBToHSV(float3 c)
|
|
{
|
|
float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) );
|
|
float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) );
|
|
float d = q.x - min( q.w, q.y );
|
|
float e = 1.0e-10;
|
|
return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
}
|
|
|
|
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_texcoord5 = v.positionOS;
|
|
#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;
|
|
|
|
float3 normalWS = TransformObjectToWorldNormal( v.normal );
|
|
o.normalWS = -GetViewForwardDir();
|
|
float4 tangentWS = float4( TransformObjectToWorldDir( v.tangent.xyz ), v.tangent.w );
|
|
o.tangentWS = normalize( tangentWS );
|
|
half crossSign = (tangentWS.w > 0.0 ? 1.0 : -1.0) * GetOddNegativeScale();
|
|
o.bitangentWS = crossSign * cross( normalWS, tangentWS.xyz ) * tangentWS.w;
|
|
return o;
|
|
}
|
|
|
|
half4 frag ( VertexOutput IN ) : SV_Target
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID( IN );
|
|
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN );
|
|
|
|
float2 uv_GlowTex = IN.texCoord0.xy * _GlowTex_ST.xy + _GlowTex_ST.zw;
|
|
float2 panner545 = ( 1.0 * _Time.y * _GlowOffsetSpeed + uv_GlowTex);
|
|
float4 tex2DNode546 = tex2D( _GlowTex, panner545 );
|
|
#if defined(_GLOWCHANNEL_R)
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#elif defined(_GLOWCHANNEL_A)
|
|
float staticSwitch548 = tex2DNode546.a;
|
|
#else
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#endif
|
|
float4 lerpResult551 = lerp( float4( 0,0,0,0 ) , ( _GlowColor * staticSwitch548 ) , _z9_Glow);
|
|
float2 uv_MainTex = IN.texCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
|
|
float2 lerpResult412 = lerp( (uv_MainTex*_UVScale + 0.0) , ( ( uv_MainTex * _UVScale ) + -( _UVScale * 0.5 ) + 0.5 ) , _UVScaleType);
|
|
float2 panner414 = ( 1.0 * _Time.y * _OffsetSpeed + lerpResult412);
|
|
float temp_output_83_0 = (panner414).x;
|
|
float lerpResult445 = lerp( temp_output_83_0 , ( 1.0 - temp_output_83_0 ) , _HorizontalFlip);
|
|
float temp_output_82_0 = (panner414).y;
|
|
float lerpResult447 = lerp( temp_output_82_0 , ( 1.0 - temp_output_82_0 ) , _VerticalFlip);
|
|
float2 appendResult90 = (float2(lerpResult445 , lerpResult447));
|
|
float cos1_g53 = cos( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g53 = sin( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g53 = mul( appendResult90 - _Pivot , float2x2( cos1_g53 , -sin1_g53 , sin1_g53 , cos1_g53 )) + _Pivot;
|
|
float2 temp_output_421_0 = rotator1_g53;
|
|
float2 uv_FlowTex = IN.texCoord0.xy * _FlowTex_ST.xy + _FlowTex_ST.zw;
|
|
float2 temp_output_427_0 = ( float2( 0,0 ) + uv_FlowTex + (0) );
|
|
float2 CenteredUV15_g52 = ( temp_output_427_0 - _FlowPolarPivot );
|
|
float2 break17_g52 = CenteredUV15_g52;
|
|
float2 appendResult23_g52 = (float2(( length( CenteredUV15_g52 ) * _FlowPolarUV.x * 2.0 ) , ( atan2( break17_g52.x , break17_g52.y ) * ( 1.0 / TWO_PI ) * _FlowPolarUV.y )));
|
|
float2 lerpResult429 = lerp( temp_output_427_0 , appendResult23_g52 , _FlowPolar);
|
|
float2 panner430 = ( 1.0 * _Time.y * _FlowOffsetSpeed + lerpResult429);
|
|
float2 temp_cast_0 = (saturate( tex2D( _FlowTex, panner430 ).r )).xx;
|
|
float2 lerpResult432 = lerp( temp_output_421_0 , temp_cast_0 , _FlowIntensity);
|
|
float2 uv_FlowMaskTex = IN.texCoord0.xy * _FlowMaskTex_ST.xy + _FlowMaskTex_ST.zw;
|
|
float4 tex2DNode554 = tex2D( _FlowMaskTex, uv_FlowMaskTex );
|
|
#if defined(_FLOWMASKCHANNEL_R)
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#elif defined(_FLOWMASKCHANNEL_A)
|
|
float staticSwitch556 = tex2DNode554.a;
|
|
#else
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#endif
|
|
float lerpResult563 = lerp( 1.0 , staticSwitch556 , _FlowMask);
|
|
float2 lerpResult441 = lerp( temp_output_421_0 , lerpResult432 , ( _z5_Flow * lerpResult563 ));
|
|
float4 tex2DNode1 = tex2D( _MainTex, lerpResult441 );
|
|
float3 hsvTorgb1_g15 = RGBToHSV( (tex2DNode1).rgb );
|
|
float clampResult8_g15 = clamp( ( hsvTorgb1_g15.y + _S ) , 0.0 , 1.0 );
|
|
float3 hsvTorgb9_g15 = HSVToRGB( float3(( hsvTorgb1_g15.x + _H ),clampResult8_g15,( hsvTorgb1_g15.z + _V )) );
|
|
float4 appendResult124 = (float4(hsvTorgb9_g15 , (tex2DNode1).a));
|
|
float4 lerpResult443 = lerp( float4( 1,1,1,1 ) , ( IN.color * _MainColor * appendResult124 ) , _z1_MainTex);
|
|
float4 MainTex537 = lerpResult443;
|
|
float temp_output_494_0 = (-0.1 + (qw - 0.0) * (1.05 - -0.1) / (1.0 - 0.0));
|
|
float2 uv_DissolveTex = IN.texCoord0.xy * _DissolveTex_ST.xy + _DissolveTex_ST.zw;
|
|
float2 appendResult476 = (float2(IN.ase_texcoord5.xyz.x , IN.ase_texcoord5.xyz.y));
|
|
float2 lerpResult480 = lerp( uv_DissolveTex , appendResult476 , _DissolveWorldUV);
|
|
float lerpResult490 = lerp( 0.5 , tex2D( _DissolveTex, ( _DissolveUVScale * lerpResult480 ) ).r , _DissolveTexIntensity);
|
|
float2 texCoord464 = IN.texCoord0.xy * float2( 1,1 ) + float2( 0,0 );
|
|
#if defined(_DISSOLVEDIRECTION_OFF)
|
|
float staticSwitch478 = 0.0;
|
|
#elif defined(_DISSOLVEDIRECTION_X_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.x , _DissolvePivotX ) / (1.0 + (abs( (-1.0 + (_DissolvePivotX - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#elif defined(_DISSOLVEDIRECTION_Y_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.y , _DissolvePivotY ) / (1.0 + (abs( (-1.0 + (_DissolvePivotY - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#else
|
|
float staticSwitch478 = 0.0;
|
|
#endif
|
|
float DissolveDirection484 = saturate( staticSwitch478 );
|
|
float temp_output_496_0 = ( lerpResult490 + DissolveDirection484 );
|
|
float temp_output_498_0 = ( temp_output_496_0 + _DissolveEdgeWidth );
|
|
float temp_output_501_0 = step( temp_output_494_0 , temp_output_498_0 );
|
|
float temp_output_503_0 = ( temp_output_501_0 - step( temp_output_494_0 , temp_output_496_0 ) );
|
|
float4 lerpResult507 = lerp( MainTex537 , ( _DissolveEdgeColor * temp_output_503_0 ) , temp_output_503_0);
|
|
float4 DissolveRGBChannel508 = lerpResult507;
|
|
float4 lerpResult539 = lerp( MainTex537 , DissolveRGBChannel508 , _z4_Dissolve);
|
|
float4 lerpResult565 = lerp( ( lerpResult551 + float4( (lerpResult539).rgb , 0.0 ) ) , _LerpColor , _LerpColor.a);
|
|
float2 uv_MaskTex = IN.texCoord0.xy * _MaskTex_ST.xy + _MaskTex_ST.zw;
|
|
float2 panner519 = ( 1.0 * _Time.y * _MaskOffsetSpeed + ( ( uv_MaskTex * _MaskUVScale ) + -( _MaskUVScale * 0.5 ) + 0.5 ));
|
|
float cos1_g64 = cos( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g64 = sin( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g64 = mul( panner519 - _MaskPivot , float2x2( cos1_g64 , -sin1_g64 , sin1_g64 , cos1_g64 )) + _MaskPivot;
|
|
float4 tex2DNode521 = tex2D( _MaskTex, rotator1_g64 );
|
|
#if defined(_MASKCHANNEL_R)
|
|
float staticSwitch522 = tex2DNode521.r;
|
|
#elif defined(_MASKCHANNEL_A)
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#else
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#endif
|
|
float lerpResult523 = lerp( 1.0 , staticSwitch522 , _z6_Mask);
|
|
float smoothstepResult509 = smoothstep( temp_output_498_0 , 0.0 , temp_output_494_0);
|
|
float lerpResult511 = lerp( temp_output_501_0 , smoothstepResult509 , _SoftDissolve);
|
|
float DissolveAlphaChannel512 = lerpResult511;
|
|
float lerpResult541 = lerp( 1.0 , DissolveAlphaChannel512 , _z4_Dissolve);
|
|
float4 appendResult536 = (float4(lerpResult565.rgb , ( (lerpResult539).a * lerpResult523 * lerpResult541 )));
|
|
|
|
float2 uv_NormalMap = IN.texCoord0.xy * _NormalMap_ST.xy + _NormalMap_ST.zw;
|
|
float3 unpack567 = UnpackNormalScale( tex2D( _NormalMap, uv_NormalMap ), _NormalIntensity );
|
|
unpack567.z = lerp( 1, unpack567.z, saturate(_NormalIntensity) );
|
|
|
|
float4 Color = appendResult536;
|
|
float3 Normal = unpack567;
|
|
|
|
Color *= IN.color;
|
|
|
|
return NormalsRenderingShared( Color, Normal, IN.tangentWS.xyz, IN.bitangentWS, IN.normalWS);
|
|
}
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
|
|
Pass
|
|
{
|
|
|
|
Name "Sprite 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"
|
|
|
|
#define ASE_NEEDS_FRAG_COLOR
|
|
#define ASE_NEEDS_FRAG_POSITION
|
|
#pragma shader_feature_local _GLOWCHANNEL_R _GLOWCHANNEL_A
|
|
#pragma shader_feature_local _FLOWMASKCHANNEL_R _FLOWMASKCHANNEL_A
|
|
#pragma shader_feature_local _DISSOLVEDIRECTION_OFF _DISSOLVEDIRECTION_X_DIRECTION _DISSOLVEDIRECTION_Y_DIRECTION
|
|
#pragma shader_feature_local _MASKCHANNEL_R _MASKCHANNEL_A
|
|
|
|
|
|
sampler2D _GlowTex;
|
|
sampler2D _MainTex;
|
|
sampler2D _FlowTex;
|
|
sampler2D _FlowMaskTex;
|
|
sampler2D _DissolveTex;
|
|
sampler2D _MaskTex;
|
|
CBUFFER_START( UnityPerMaterial )
|
|
float4 _GlowColor;
|
|
float4 _DissolveEdgeColor;
|
|
float4 _NormalMap_ST;
|
|
float4 _FlowMaskTex_ST;
|
|
float4 _LerpColor;
|
|
float4 _MaskTex_ST;
|
|
float4 _FlowTex_ST;
|
|
float4 _MainColor;
|
|
float4 _GlowTex_ST;
|
|
float4 _MainTex_ST;
|
|
float4 _DissolveTex_ST;
|
|
float2 _Pivot;
|
|
float2 _OffsetSpeed;
|
|
float2 _FlowOffsetSpeed;
|
|
float2 _DissolveUVScale;
|
|
float2 _FlowPolarPivot;
|
|
float2 _FlowPolarUV;
|
|
float2 _MaskOffsetSpeed;
|
|
float2 _MaskPivot;
|
|
float2 _GlowOffsetSpeed;
|
|
float _DissolveWorldUV;
|
|
float _DissolveTexIntensity;
|
|
float _DissolvePivotX;
|
|
float _SoftDissolve;
|
|
float _MaskAngle;
|
|
float _DissolveEdgeWidth;
|
|
float _MaskUVScale;
|
|
float _z4_Dissolve;
|
|
float _DissolvePivotY;
|
|
float _z6_Mask;
|
|
float _H;
|
|
float _z1_MainTex;
|
|
float _V;
|
|
float _S;
|
|
float _FlowMask;
|
|
float _z5_Flow;
|
|
float _FlowIntensity;
|
|
float _FlowPolar;
|
|
float _Angle;
|
|
float _VerticalFlip;
|
|
float _HorizontalFlip;
|
|
float _UVScaleType;
|
|
float _UVScale;
|
|
float _z9_Glow;
|
|
float qw;
|
|
float _NormalIntensity;
|
|
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;
|
|
float4 ase_texcoord3 : TEXCOORD3;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
UNITY_VERTEX_OUTPUT_STEREO
|
|
};
|
|
|
|
#if ETC1_EXTERNAL_ALPHA
|
|
TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex );
|
|
float _EnableAlphaTexture;
|
|
#endif
|
|
|
|
float3 HSVToRGB( float3 c )
|
|
{
|
|
float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 );
|
|
float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www );
|
|
return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y );
|
|
}
|
|
|
|
float3 RGBToHSV(float3 c)
|
|
{
|
|
float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) );
|
|
float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) );
|
|
float d = q.x - min( q.w, q.y );
|
|
float e = 1.0e-10;
|
|
return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
}
|
|
|
|
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_texcoord3 = v.positionOS;
|
|
#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 );
|
|
|
|
float3 positionWS = IN.positionWS.xyz;
|
|
|
|
float2 uv_GlowTex = IN.texCoord0.xy * _GlowTex_ST.xy + _GlowTex_ST.zw;
|
|
float2 panner545 = ( 1.0 * _Time.y * _GlowOffsetSpeed + uv_GlowTex);
|
|
float4 tex2DNode546 = tex2D( _GlowTex, panner545 );
|
|
#if defined(_GLOWCHANNEL_R)
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#elif defined(_GLOWCHANNEL_A)
|
|
float staticSwitch548 = tex2DNode546.a;
|
|
#else
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#endif
|
|
float4 lerpResult551 = lerp( float4( 0,0,0,0 ) , ( _GlowColor * staticSwitch548 ) , _z9_Glow);
|
|
float2 uv_MainTex = IN.texCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
|
|
float2 lerpResult412 = lerp( (uv_MainTex*_UVScale + 0.0) , ( ( uv_MainTex * _UVScale ) + -( _UVScale * 0.5 ) + 0.5 ) , _UVScaleType);
|
|
float2 panner414 = ( 1.0 * _Time.y * _OffsetSpeed + lerpResult412);
|
|
float temp_output_83_0 = (panner414).x;
|
|
float lerpResult445 = lerp( temp_output_83_0 , ( 1.0 - temp_output_83_0 ) , _HorizontalFlip);
|
|
float temp_output_82_0 = (panner414).y;
|
|
float lerpResult447 = lerp( temp_output_82_0 , ( 1.0 - temp_output_82_0 ) , _VerticalFlip);
|
|
float2 appendResult90 = (float2(lerpResult445 , lerpResult447));
|
|
float cos1_g53 = cos( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g53 = sin( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g53 = mul( appendResult90 - _Pivot , float2x2( cos1_g53 , -sin1_g53 , sin1_g53 , cos1_g53 )) + _Pivot;
|
|
float2 temp_output_421_0 = rotator1_g53;
|
|
float2 uv_FlowTex = IN.texCoord0.xy * _FlowTex_ST.xy + _FlowTex_ST.zw;
|
|
float2 temp_output_427_0 = ( float2( 0,0 ) + uv_FlowTex + (0) );
|
|
float2 CenteredUV15_g52 = ( temp_output_427_0 - _FlowPolarPivot );
|
|
float2 break17_g52 = CenteredUV15_g52;
|
|
float2 appendResult23_g52 = (float2(( length( CenteredUV15_g52 ) * _FlowPolarUV.x * 2.0 ) , ( atan2( break17_g52.x , break17_g52.y ) * ( 1.0 / TWO_PI ) * _FlowPolarUV.y )));
|
|
float2 lerpResult429 = lerp( temp_output_427_0 , appendResult23_g52 , _FlowPolar);
|
|
float2 panner430 = ( 1.0 * _Time.y * _FlowOffsetSpeed + lerpResult429);
|
|
float2 temp_cast_0 = (saturate( tex2D( _FlowTex, panner430 ).r )).xx;
|
|
float2 lerpResult432 = lerp( temp_output_421_0 , temp_cast_0 , _FlowIntensity);
|
|
float2 uv_FlowMaskTex = IN.texCoord0.xy * _FlowMaskTex_ST.xy + _FlowMaskTex_ST.zw;
|
|
float4 tex2DNode554 = tex2D( _FlowMaskTex, uv_FlowMaskTex );
|
|
#if defined(_FLOWMASKCHANNEL_R)
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#elif defined(_FLOWMASKCHANNEL_A)
|
|
float staticSwitch556 = tex2DNode554.a;
|
|
#else
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#endif
|
|
float lerpResult563 = lerp( 1.0 , staticSwitch556 , _FlowMask);
|
|
float2 lerpResult441 = lerp( temp_output_421_0 , lerpResult432 , ( _z5_Flow * lerpResult563 ));
|
|
float4 tex2DNode1 = tex2D( _MainTex, lerpResult441 );
|
|
float3 hsvTorgb1_g15 = RGBToHSV( (tex2DNode1).rgb );
|
|
float clampResult8_g15 = clamp( ( hsvTorgb1_g15.y + _S ) , 0.0 , 1.0 );
|
|
float3 hsvTorgb9_g15 = HSVToRGB( float3(( hsvTorgb1_g15.x + _H ),clampResult8_g15,( hsvTorgb1_g15.z + _V )) );
|
|
float4 appendResult124 = (float4(hsvTorgb9_g15 , (tex2DNode1).a));
|
|
float4 lerpResult443 = lerp( float4( 1,1,1,1 ) , ( IN.color * _MainColor * appendResult124 ) , _z1_MainTex);
|
|
float4 MainTex537 = lerpResult443;
|
|
float temp_output_494_0 = (-0.1 + (qw - 0.0) * (1.05 - -0.1) / (1.0 - 0.0));
|
|
float2 uv_DissolveTex = IN.texCoord0.xy * _DissolveTex_ST.xy + _DissolveTex_ST.zw;
|
|
float2 appendResult476 = (float2(IN.ase_texcoord3.xyz.x , IN.ase_texcoord3.xyz.y));
|
|
float2 lerpResult480 = lerp( uv_DissolveTex , appendResult476 , _DissolveWorldUV);
|
|
float lerpResult490 = lerp( 0.5 , tex2D( _DissolveTex, ( _DissolveUVScale * lerpResult480 ) ).r , _DissolveTexIntensity);
|
|
float2 texCoord464 = IN.texCoord0.xy * float2( 1,1 ) + float2( 0,0 );
|
|
#if defined(_DISSOLVEDIRECTION_OFF)
|
|
float staticSwitch478 = 0.0;
|
|
#elif defined(_DISSOLVEDIRECTION_X_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.x , _DissolvePivotX ) / (1.0 + (abs( (-1.0 + (_DissolvePivotX - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#elif defined(_DISSOLVEDIRECTION_Y_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.y , _DissolvePivotY ) / (1.0 + (abs( (-1.0 + (_DissolvePivotY - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#else
|
|
float staticSwitch478 = 0.0;
|
|
#endif
|
|
float DissolveDirection484 = saturate( staticSwitch478 );
|
|
float temp_output_496_0 = ( lerpResult490 + DissolveDirection484 );
|
|
float temp_output_498_0 = ( temp_output_496_0 + _DissolveEdgeWidth );
|
|
float temp_output_501_0 = step( temp_output_494_0 , temp_output_498_0 );
|
|
float temp_output_503_0 = ( temp_output_501_0 - step( temp_output_494_0 , temp_output_496_0 ) );
|
|
float4 lerpResult507 = lerp( MainTex537 , ( _DissolveEdgeColor * temp_output_503_0 ) , temp_output_503_0);
|
|
float4 DissolveRGBChannel508 = lerpResult507;
|
|
float4 lerpResult539 = lerp( MainTex537 , DissolveRGBChannel508 , _z4_Dissolve);
|
|
float4 lerpResult565 = lerp( ( lerpResult551 + float4( (lerpResult539).rgb , 0.0 ) ) , _LerpColor , _LerpColor.a);
|
|
float2 uv_MaskTex = IN.texCoord0.xy * _MaskTex_ST.xy + _MaskTex_ST.zw;
|
|
float2 panner519 = ( 1.0 * _Time.y * _MaskOffsetSpeed + ( ( uv_MaskTex * _MaskUVScale ) + -( _MaskUVScale * 0.5 ) + 0.5 ));
|
|
float cos1_g64 = cos( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g64 = sin( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g64 = mul( panner519 - _MaskPivot , float2x2( cos1_g64 , -sin1_g64 , sin1_g64 , cos1_g64 )) + _MaskPivot;
|
|
float4 tex2DNode521 = tex2D( _MaskTex, rotator1_g64 );
|
|
#if defined(_MASKCHANNEL_R)
|
|
float staticSwitch522 = tex2DNode521.r;
|
|
#elif defined(_MASKCHANNEL_A)
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#else
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#endif
|
|
float lerpResult523 = lerp( 1.0 , staticSwitch522 , _z6_Mask);
|
|
float smoothstepResult509 = smoothstep( temp_output_498_0 , 0.0 , temp_output_494_0);
|
|
float lerpResult511 = lerp( temp_output_501_0 , smoothstepResult509 , _SoftDissolve);
|
|
float DissolveAlphaChannel512 = lerpResult511;
|
|
float lerpResult541 = lerp( 1.0 , DissolveAlphaChannel512 , _z4_Dissolve);
|
|
float4 appendResult536 = (float4(lerpResult565.rgb , ( (lerpResult539).a * lerpResult523 * lerpResult541 )));
|
|
|
|
float4 Color = appendResult536;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
SurfaceData2D surfaceData;
|
|
InitializeSurfaceData(Color.rgb, Color.a, surfaceData);
|
|
InputData2D inputData;
|
|
InitializeInputData(positionWS.xy, half2(IN.texCoord0.xy), inputData);
|
|
half4 debugColor = 0;
|
|
|
|
SETUP_DEBUG_DATA_2D(inputData, positionWS);
|
|
|
|
if (CanDebugOverrideOutputColor(surfaceData, inputData, debugColor))
|
|
{
|
|
return debugColor;
|
|
}
|
|
#endif
|
|
|
|
#if ETC1_EXTERNAL_ALPHA
|
|
float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy );
|
|
Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture );
|
|
#endif
|
|
|
|
Color *= IN.color;
|
|
|
|
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"
|
|
|
|
#define ASE_NEEDS_FRAG_POSITION
|
|
#pragma shader_feature_local _GLOWCHANNEL_R _GLOWCHANNEL_A
|
|
#pragma shader_feature_local _FLOWMASKCHANNEL_R _FLOWMASKCHANNEL_A
|
|
#pragma shader_feature_local _DISSOLVEDIRECTION_OFF _DISSOLVEDIRECTION_X_DIRECTION _DISSOLVEDIRECTION_Y_DIRECTION
|
|
#pragma shader_feature_local _MASKCHANNEL_R _MASKCHANNEL_A
|
|
|
|
|
|
sampler2D _GlowTex;
|
|
sampler2D _MainTex;
|
|
sampler2D _FlowTex;
|
|
sampler2D _FlowMaskTex;
|
|
sampler2D _DissolveTex;
|
|
sampler2D _MaskTex;
|
|
CBUFFER_START( UnityPerMaterial )
|
|
float4 _GlowColor;
|
|
float4 _DissolveEdgeColor;
|
|
float4 _NormalMap_ST;
|
|
float4 _FlowMaskTex_ST;
|
|
float4 _LerpColor;
|
|
float4 _MaskTex_ST;
|
|
float4 _FlowTex_ST;
|
|
float4 _MainColor;
|
|
float4 _GlowTex_ST;
|
|
float4 _MainTex_ST;
|
|
float4 _DissolveTex_ST;
|
|
float2 _Pivot;
|
|
float2 _OffsetSpeed;
|
|
float2 _FlowOffsetSpeed;
|
|
float2 _DissolveUVScale;
|
|
float2 _FlowPolarPivot;
|
|
float2 _FlowPolarUV;
|
|
float2 _MaskOffsetSpeed;
|
|
float2 _MaskPivot;
|
|
float2 _GlowOffsetSpeed;
|
|
float _DissolveWorldUV;
|
|
float _DissolveTexIntensity;
|
|
float _DissolvePivotX;
|
|
float _SoftDissolve;
|
|
float _MaskAngle;
|
|
float _DissolveEdgeWidth;
|
|
float _MaskUVScale;
|
|
float _z4_Dissolve;
|
|
float _DissolvePivotY;
|
|
float _z6_Mask;
|
|
float _H;
|
|
float _z1_MainTex;
|
|
float _V;
|
|
float _S;
|
|
float _FlowMask;
|
|
float _z5_Flow;
|
|
float _FlowIntensity;
|
|
float _FlowPolar;
|
|
float _Angle;
|
|
float _VerticalFlip;
|
|
float _HorizontalFlip;
|
|
float _UVScaleType;
|
|
float _UVScale;
|
|
float _z9_Glow;
|
|
float qw;
|
|
float _NormalIntensity;
|
|
CBUFFER_END
|
|
|
|
|
|
struct VertexInput
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normal : NORMAL;
|
|
float4 tangent : TANGENT;
|
|
float4 ase_texcoord : TEXCOORD0;
|
|
float4 ase_color : COLOR;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
};
|
|
|
|
struct VertexOutput
|
|
{
|
|
float4 positionCS : SV_POSITION;
|
|
float4 ase_texcoord : TEXCOORD0;
|
|
float4 ase_color : COLOR;
|
|
float4 ase_texcoord1 : TEXCOORD1;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
};
|
|
|
|
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
|
|
float3 HSVToRGB( float3 c )
|
|
{
|
|
float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 );
|
|
float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www );
|
|
return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y );
|
|
}
|
|
|
|
float3 RGBToHSV(float3 c)
|
|
{
|
|
float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) );
|
|
float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) );
|
|
float d = q.x - min( q.w, q.y );
|
|
float e = 1.0e-10;
|
|
return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
}
|
|
|
|
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;
|
|
o.ase_color = v.ase_color;
|
|
o.ase_texcoord1 = float4(v.positionOS,1);
|
|
|
|
//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_GlowTex = IN.ase_texcoord.xy * _GlowTex_ST.xy + _GlowTex_ST.zw;
|
|
float2 panner545 = ( 1.0 * _Time.y * _GlowOffsetSpeed + uv_GlowTex);
|
|
float4 tex2DNode546 = tex2D( _GlowTex, panner545 );
|
|
#if defined(_GLOWCHANNEL_R)
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#elif defined(_GLOWCHANNEL_A)
|
|
float staticSwitch548 = tex2DNode546.a;
|
|
#else
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#endif
|
|
float4 lerpResult551 = lerp( float4( 0,0,0,0 ) , ( _GlowColor * staticSwitch548 ) , _z9_Glow);
|
|
float2 uv_MainTex = IN.ase_texcoord.xy * _MainTex_ST.xy + _MainTex_ST.zw;
|
|
float2 lerpResult412 = lerp( (uv_MainTex*_UVScale + 0.0) , ( ( uv_MainTex * _UVScale ) + -( _UVScale * 0.5 ) + 0.5 ) , _UVScaleType);
|
|
float2 panner414 = ( 1.0 * _Time.y * _OffsetSpeed + lerpResult412);
|
|
float temp_output_83_0 = (panner414).x;
|
|
float lerpResult445 = lerp( temp_output_83_0 , ( 1.0 - temp_output_83_0 ) , _HorizontalFlip);
|
|
float temp_output_82_0 = (panner414).y;
|
|
float lerpResult447 = lerp( temp_output_82_0 , ( 1.0 - temp_output_82_0 ) , _VerticalFlip);
|
|
float2 appendResult90 = (float2(lerpResult445 , lerpResult447));
|
|
float cos1_g53 = cos( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g53 = sin( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g53 = mul( appendResult90 - _Pivot , float2x2( cos1_g53 , -sin1_g53 , sin1_g53 , cos1_g53 )) + _Pivot;
|
|
float2 temp_output_421_0 = rotator1_g53;
|
|
float2 uv_FlowTex = IN.ase_texcoord.xy * _FlowTex_ST.xy + _FlowTex_ST.zw;
|
|
float2 temp_output_427_0 = ( float2( 0,0 ) + uv_FlowTex + (0) );
|
|
float2 CenteredUV15_g52 = ( temp_output_427_0 - _FlowPolarPivot );
|
|
float2 break17_g52 = CenteredUV15_g52;
|
|
float2 appendResult23_g52 = (float2(( length( CenteredUV15_g52 ) * _FlowPolarUV.x * 2.0 ) , ( atan2( break17_g52.x , break17_g52.y ) * ( 1.0 / TWO_PI ) * _FlowPolarUV.y )));
|
|
float2 lerpResult429 = lerp( temp_output_427_0 , appendResult23_g52 , _FlowPolar);
|
|
float2 panner430 = ( 1.0 * _Time.y * _FlowOffsetSpeed + lerpResult429);
|
|
float2 temp_cast_0 = (saturate( tex2D( _FlowTex, panner430 ).r )).xx;
|
|
float2 lerpResult432 = lerp( temp_output_421_0 , temp_cast_0 , _FlowIntensity);
|
|
float2 uv_FlowMaskTex = IN.ase_texcoord.xy * _FlowMaskTex_ST.xy + _FlowMaskTex_ST.zw;
|
|
float4 tex2DNode554 = tex2D( _FlowMaskTex, uv_FlowMaskTex );
|
|
#if defined(_FLOWMASKCHANNEL_R)
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#elif defined(_FLOWMASKCHANNEL_A)
|
|
float staticSwitch556 = tex2DNode554.a;
|
|
#else
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#endif
|
|
float lerpResult563 = lerp( 1.0 , staticSwitch556 , _FlowMask);
|
|
float2 lerpResult441 = lerp( temp_output_421_0 , lerpResult432 , ( _z5_Flow * lerpResult563 ));
|
|
float4 tex2DNode1 = tex2D( _MainTex, lerpResult441 );
|
|
float3 hsvTorgb1_g15 = RGBToHSV( (tex2DNode1).rgb );
|
|
float clampResult8_g15 = clamp( ( hsvTorgb1_g15.y + _S ) , 0.0 , 1.0 );
|
|
float3 hsvTorgb9_g15 = HSVToRGB( float3(( hsvTorgb1_g15.x + _H ),clampResult8_g15,( hsvTorgb1_g15.z + _V )) );
|
|
float4 appendResult124 = (float4(hsvTorgb9_g15 , (tex2DNode1).a));
|
|
float4 lerpResult443 = lerp( float4( 1,1,1,1 ) , ( IN.ase_color * _MainColor * appendResult124 ) , _z1_MainTex);
|
|
float4 MainTex537 = lerpResult443;
|
|
float temp_output_494_0 = (-0.1 + (qw - 0.0) * (1.05 - -0.1) / (1.0 - 0.0));
|
|
float2 uv_DissolveTex = IN.ase_texcoord.xy * _DissolveTex_ST.xy + _DissolveTex_ST.zw;
|
|
float2 appendResult476 = (float2(IN.ase_texcoord1.xyz.x , IN.ase_texcoord1.xyz.y));
|
|
float2 lerpResult480 = lerp( uv_DissolveTex , appendResult476 , _DissolveWorldUV);
|
|
float lerpResult490 = lerp( 0.5 , tex2D( _DissolveTex, ( _DissolveUVScale * lerpResult480 ) ).r , _DissolveTexIntensity);
|
|
float2 texCoord464 = IN.ase_texcoord.xy * float2( 1,1 ) + float2( 0,0 );
|
|
#if defined(_DISSOLVEDIRECTION_OFF)
|
|
float staticSwitch478 = 0.0;
|
|
#elif defined(_DISSOLVEDIRECTION_X_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.x , _DissolvePivotX ) / (1.0 + (abs( (-1.0 + (_DissolvePivotX - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#elif defined(_DISSOLVEDIRECTION_Y_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.y , _DissolvePivotY ) / (1.0 + (abs( (-1.0 + (_DissolvePivotY - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#else
|
|
float staticSwitch478 = 0.0;
|
|
#endif
|
|
float DissolveDirection484 = saturate( staticSwitch478 );
|
|
float temp_output_496_0 = ( lerpResult490 + DissolveDirection484 );
|
|
float temp_output_498_0 = ( temp_output_496_0 + _DissolveEdgeWidth );
|
|
float temp_output_501_0 = step( temp_output_494_0 , temp_output_498_0 );
|
|
float temp_output_503_0 = ( temp_output_501_0 - step( temp_output_494_0 , temp_output_496_0 ) );
|
|
float4 lerpResult507 = lerp( MainTex537 , ( _DissolveEdgeColor * temp_output_503_0 ) , temp_output_503_0);
|
|
float4 DissolveRGBChannel508 = lerpResult507;
|
|
float4 lerpResult539 = lerp( MainTex537 , DissolveRGBChannel508 , _z4_Dissolve);
|
|
float4 lerpResult565 = lerp( ( lerpResult551 + float4( (lerpResult539).rgb , 0.0 ) ) , _LerpColor , _LerpColor.a);
|
|
float2 uv_MaskTex = IN.ase_texcoord.xy * _MaskTex_ST.xy + _MaskTex_ST.zw;
|
|
float2 panner519 = ( 1.0 * _Time.y * _MaskOffsetSpeed + ( ( uv_MaskTex * _MaskUVScale ) + -( _MaskUVScale * 0.5 ) + 0.5 ));
|
|
float cos1_g64 = cos( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g64 = sin( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g64 = mul( panner519 - _MaskPivot , float2x2( cos1_g64 , -sin1_g64 , sin1_g64 , cos1_g64 )) + _MaskPivot;
|
|
float4 tex2DNode521 = tex2D( _MaskTex, rotator1_g64 );
|
|
#if defined(_MASKCHANNEL_R)
|
|
float staticSwitch522 = tex2DNode521.r;
|
|
#elif defined(_MASKCHANNEL_A)
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#else
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#endif
|
|
float lerpResult523 = lerp( 1.0 , staticSwitch522 , _z6_Mask);
|
|
float smoothstepResult509 = smoothstep( temp_output_498_0 , 0.0 , temp_output_494_0);
|
|
float lerpResult511 = lerp( temp_output_501_0 , smoothstepResult509 , _SoftDissolve);
|
|
float DissolveAlphaChannel512 = lerpResult511;
|
|
float lerpResult541 = lerp( 1.0 , DissolveAlphaChannel512 , _z4_Dissolve);
|
|
float4 appendResult536 = (float4(lerpResult565.rgb , ( (lerpResult539).a * lerpResult523 * lerpResult541 )));
|
|
|
|
float4 Color = appendResult536;
|
|
|
|
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"
|
|
|
|
#define ASE_NEEDS_FRAG_POSITION
|
|
#pragma shader_feature_local _GLOWCHANNEL_R _GLOWCHANNEL_A
|
|
#pragma shader_feature_local _FLOWMASKCHANNEL_R _FLOWMASKCHANNEL_A
|
|
#pragma shader_feature_local _DISSOLVEDIRECTION_OFF _DISSOLVEDIRECTION_X_DIRECTION _DISSOLVEDIRECTION_Y_DIRECTION
|
|
#pragma shader_feature_local _MASKCHANNEL_R _MASKCHANNEL_A
|
|
|
|
|
|
sampler2D _GlowTex;
|
|
sampler2D _MainTex;
|
|
sampler2D _FlowTex;
|
|
sampler2D _FlowMaskTex;
|
|
sampler2D _DissolveTex;
|
|
sampler2D _MaskTex;
|
|
CBUFFER_START( UnityPerMaterial )
|
|
float4 _GlowColor;
|
|
float4 _DissolveEdgeColor;
|
|
float4 _NormalMap_ST;
|
|
float4 _FlowMaskTex_ST;
|
|
float4 _LerpColor;
|
|
float4 _MaskTex_ST;
|
|
float4 _FlowTex_ST;
|
|
float4 _MainColor;
|
|
float4 _GlowTex_ST;
|
|
float4 _MainTex_ST;
|
|
float4 _DissolveTex_ST;
|
|
float2 _Pivot;
|
|
float2 _OffsetSpeed;
|
|
float2 _FlowOffsetSpeed;
|
|
float2 _DissolveUVScale;
|
|
float2 _FlowPolarPivot;
|
|
float2 _FlowPolarUV;
|
|
float2 _MaskOffsetSpeed;
|
|
float2 _MaskPivot;
|
|
float2 _GlowOffsetSpeed;
|
|
float _DissolveWorldUV;
|
|
float _DissolveTexIntensity;
|
|
float _DissolvePivotX;
|
|
float _SoftDissolve;
|
|
float _MaskAngle;
|
|
float _DissolveEdgeWidth;
|
|
float _MaskUVScale;
|
|
float _z4_Dissolve;
|
|
float _DissolvePivotY;
|
|
float _z6_Mask;
|
|
float _H;
|
|
float _z1_MainTex;
|
|
float _V;
|
|
float _S;
|
|
float _FlowMask;
|
|
float _z5_Flow;
|
|
float _FlowIntensity;
|
|
float _FlowPolar;
|
|
float _Angle;
|
|
float _VerticalFlip;
|
|
float _HorizontalFlip;
|
|
float _UVScaleType;
|
|
float _UVScale;
|
|
float _z9_Glow;
|
|
float qw;
|
|
float _NormalIntensity;
|
|
CBUFFER_END
|
|
|
|
|
|
struct VertexInput
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normal : NORMAL;
|
|
float4 tangent : TANGENT;
|
|
float4 ase_texcoord : TEXCOORD0;
|
|
float4 ase_color : COLOR;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
};
|
|
|
|
struct VertexOutput
|
|
{
|
|
float4 positionCS : SV_POSITION;
|
|
float4 ase_texcoord : TEXCOORD0;
|
|
float4 ase_color : COLOR;
|
|
float4 ase_texcoord1 : TEXCOORD1;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
};
|
|
|
|
float4 _SelectionID;
|
|
|
|
float3 HSVToRGB( float3 c )
|
|
{
|
|
float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 );
|
|
float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www );
|
|
return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y );
|
|
}
|
|
|
|
float3 RGBToHSV(float3 c)
|
|
{
|
|
float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) );
|
|
float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) );
|
|
float d = q.x - min( q.w, q.y );
|
|
float e = 1.0e-10;
|
|
return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
}
|
|
|
|
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;
|
|
o.ase_color = v.ase_color;
|
|
o.ase_texcoord1 = float4(v.positionOS,1);
|
|
|
|
//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_GlowTex = IN.ase_texcoord.xy * _GlowTex_ST.xy + _GlowTex_ST.zw;
|
|
float2 panner545 = ( 1.0 * _Time.y * _GlowOffsetSpeed + uv_GlowTex);
|
|
float4 tex2DNode546 = tex2D( _GlowTex, panner545 );
|
|
#if defined(_GLOWCHANNEL_R)
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#elif defined(_GLOWCHANNEL_A)
|
|
float staticSwitch548 = tex2DNode546.a;
|
|
#else
|
|
float staticSwitch548 = tex2DNode546.r;
|
|
#endif
|
|
float4 lerpResult551 = lerp( float4( 0,0,0,0 ) , ( _GlowColor * staticSwitch548 ) , _z9_Glow);
|
|
float2 uv_MainTex = IN.ase_texcoord.xy * _MainTex_ST.xy + _MainTex_ST.zw;
|
|
float2 lerpResult412 = lerp( (uv_MainTex*_UVScale + 0.0) , ( ( uv_MainTex * _UVScale ) + -( _UVScale * 0.5 ) + 0.5 ) , _UVScaleType);
|
|
float2 panner414 = ( 1.0 * _Time.y * _OffsetSpeed + lerpResult412);
|
|
float temp_output_83_0 = (panner414).x;
|
|
float lerpResult445 = lerp( temp_output_83_0 , ( 1.0 - temp_output_83_0 ) , _HorizontalFlip);
|
|
float temp_output_82_0 = (panner414).y;
|
|
float lerpResult447 = lerp( temp_output_82_0 , ( 1.0 - temp_output_82_0 ) , _VerticalFlip);
|
|
float2 appendResult90 = (float2(lerpResult445 , lerpResult447));
|
|
float cos1_g53 = cos( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g53 = sin( ( _Angle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g53 = mul( appendResult90 - _Pivot , float2x2( cos1_g53 , -sin1_g53 , sin1_g53 , cos1_g53 )) + _Pivot;
|
|
float2 temp_output_421_0 = rotator1_g53;
|
|
float2 uv_FlowTex = IN.ase_texcoord.xy * _FlowTex_ST.xy + _FlowTex_ST.zw;
|
|
float2 temp_output_427_0 = ( float2( 0,0 ) + uv_FlowTex + (0) );
|
|
float2 CenteredUV15_g52 = ( temp_output_427_0 - _FlowPolarPivot );
|
|
float2 break17_g52 = CenteredUV15_g52;
|
|
float2 appendResult23_g52 = (float2(( length( CenteredUV15_g52 ) * _FlowPolarUV.x * 2.0 ) , ( atan2( break17_g52.x , break17_g52.y ) * ( 1.0 / TWO_PI ) * _FlowPolarUV.y )));
|
|
float2 lerpResult429 = lerp( temp_output_427_0 , appendResult23_g52 , _FlowPolar);
|
|
float2 panner430 = ( 1.0 * _Time.y * _FlowOffsetSpeed + lerpResult429);
|
|
float2 temp_cast_0 = (saturate( tex2D( _FlowTex, panner430 ).r )).xx;
|
|
float2 lerpResult432 = lerp( temp_output_421_0 , temp_cast_0 , _FlowIntensity);
|
|
float2 uv_FlowMaskTex = IN.ase_texcoord.xy * _FlowMaskTex_ST.xy + _FlowMaskTex_ST.zw;
|
|
float4 tex2DNode554 = tex2D( _FlowMaskTex, uv_FlowMaskTex );
|
|
#if defined(_FLOWMASKCHANNEL_R)
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#elif defined(_FLOWMASKCHANNEL_A)
|
|
float staticSwitch556 = tex2DNode554.a;
|
|
#else
|
|
float staticSwitch556 = tex2DNode554.r;
|
|
#endif
|
|
float lerpResult563 = lerp( 1.0 , staticSwitch556 , _FlowMask);
|
|
float2 lerpResult441 = lerp( temp_output_421_0 , lerpResult432 , ( _z5_Flow * lerpResult563 ));
|
|
float4 tex2DNode1 = tex2D( _MainTex, lerpResult441 );
|
|
float3 hsvTorgb1_g15 = RGBToHSV( (tex2DNode1).rgb );
|
|
float clampResult8_g15 = clamp( ( hsvTorgb1_g15.y + _S ) , 0.0 , 1.0 );
|
|
float3 hsvTorgb9_g15 = HSVToRGB( float3(( hsvTorgb1_g15.x + _H ),clampResult8_g15,( hsvTorgb1_g15.z + _V )) );
|
|
float4 appendResult124 = (float4(hsvTorgb9_g15 , (tex2DNode1).a));
|
|
float4 lerpResult443 = lerp( float4( 1,1,1,1 ) , ( IN.ase_color * _MainColor * appendResult124 ) , _z1_MainTex);
|
|
float4 MainTex537 = lerpResult443;
|
|
float temp_output_494_0 = (-0.1 + (qw - 0.0) * (1.05 - -0.1) / (1.0 - 0.0));
|
|
float2 uv_DissolveTex = IN.ase_texcoord.xy * _DissolveTex_ST.xy + _DissolveTex_ST.zw;
|
|
float2 appendResult476 = (float2(IN.ase_texcoord1.xyz.x , IN.ase_texcoord1.xyz.y));
|
|
float2 lerpResult480 = lerp( uv_DissolveTex , appendResult476 , _DissolveWorldUV);
|
|
float lerpResult490 = lerp( 0.5 , tex2D( _DissolveTex, ( _DissolveUVScale * lerpResult480 ) ).r , _DissolveTexIntensity);
|
|
float2 texCoord464 = IN.ase_texcoord.xy * float2( 1,1 ) + float2( 0,0 );
|
|
#if defined(_DISSOLVEDIRECTION_OFF)
|
|
float staticSwitch478 = 0.0;
|
|
#elif defined(_DISSOLVEDIRECTION_X_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.x , _DissolvePivotX ) / (1.0 + (abs( (-1.0 + (_DissolvePivotX - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#elif defined(_DISSOLVEDIRECTION_Y_DIRECTION)
|
|
float staticSwitch478 = ( distance( texCoord464.y , _DissolvePivotY ) / (1.0 + (abs( (-1.0 + (_DissolvePivotY - 0.0) * (1.0 - -1.0) / (1.0 - 0.0)) ) - 0.0) * (2.0 - 1.0) / (1.0 - 0.0)) );
|
|
#else
|
|
float staticSwitch478 = 0.0;
|
|
#endif
|
|
float DissolveDirection484 = saturate( staticSwitch478 );
|
|
float temp_output_496_0 = ( lerpResult490 + DissolveDirection484 );
|
|
float temp_output_498_0 = ( temp_output_496_0 + _DissolveEdgeWidth );
|
|
float temp_output_501_0 = step( temp_output_494_0 , temp_output_498_0 );
|
|
float temp_output_503_0 = ( temp_output_501_0 - step( temp_output_494_0 , temp_output_496_0 ) );
|
|
float4 lerpResult507 = lerp( MainTex537 , ( _DissolveEdgeColor * temp_output_503_0 ) , temp_output_503_0);
|
|
float4 DissolveRGBChannel508 = lerpResult507;
|
|
float4 lerpResult539 = lerp( MainTex537 , DissolveRGBChannel508 , _z4_Dissolve);
|
|
float4 lerpResult565 = lerp( ( lerpResult551 + float4( (lerpResult539).rgb , 0.0 ) ) , _LerpColor , _LerpColor.a);
|
|
float2 uv_MaskTex = IN.ase_texcoord.xy * _MaskTex_ST.xy + _MaskTex_ST.zw;
|
|
float2 panner519 = ( 1.0 * _Time.y * _MaskOffsetSpeed + ( ( uv_MaskTex * _MaskUVScale ) + -( _MaskUVScale * 0.5 ) + 0.5 ));
|
|
float cos1_g64 = cos( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float sin1_g64 = sin( ( _MaskAngle / ( -360.0 / ( 2.0 * PI ) ) ) );
|
|
float2 rotator1_g64 = mul( panner519 - _MaskPivot , float2x2( cos1_g64 , -sin1_g64 , sin1_g64 , cos1_g64 )) + _MaskPivot;
|
|
float4 tex2DNode521 = tex2D( _MaskTex, rotator1_g64 );
|
|
#if defined(_MASKCHANNEL_R)
|
|
float staticSwitch522 = tex2DNode521.r;
|
|
#elif defined(_MASKCHANNEL_A)
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#else
|
|
float staticSwitch522 = tex2DNode521.a;
|
|
#endif
|
|
float lerpResult523 = lerp( 1.0 , staticSwitch522 , _z6_Mask);
|
|
float smoothstepResult509 = smoothstep( temp_output_498_0 , 0.0 , temp_output_494_0);
|
|
float lerpResult511 = lerp( temp_output_501_0 , smoothstepResult509 , _SoftDissolve);
|
|
float DissolveAlphaChannel512 = lerpResult511;
|
|
float lerpResult541 = lerp( 1.0 , DissolveAlphaChannel512 , _z4_Dissolve);
|
|
float4 appendResult536 = (float4(lerpResult565.rgb , ( (lerpResult539).a * lerpResult523 * lerpResult541 )));
|
|
|
|
float4 Color = appendResult536;
|
|
half4 outColor = _SelectionID;
|
|
return outColor;
|
|
}
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
}
|
|
CustomEditor "LWGUI.LWGUI"
|
|
Fallback "Hidden/InternalErrorShader"
|
|
|
|
}
|
|
/*ASEBEGIN
|
|
Version=19202
|
|
Node;AmplifyShaderEditor.CommentaryNode;532;-3447.437,-2207.242;Inherit;False;2149.808;510.5121;;24;405;407;409;410;414;412;406;83;82;84;85;444;446;408;411;413;404;445;447;90;422;421;423;398;主贴图UV;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.CommentaryNode;93;-903.574,-2188.738;Inherit;False;2270.663;643.2556;;30;541;531;539;538;540;536;533;534;535;537;443;13;11;12;442;345;1;341;397;396;395;394;117;124;123;110;111;553;564;565;主贴图;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;111;-545.0201,-2010.03;Inherit;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
|
|
Node;AmplifyShaderEditor.FunctionNode;110;-309.866,-1945.778;Inherit;False;RGBtoHSV;-1;;15;827948a46ca58ff4e910af75ab2862af;0;4;10;FLOAT3;0,0,0;False;11;FLOAT;0;False;12;FLOAT;0;False;13;FLOAT;0;False;1;FLOAT3;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;123;-540.3217,-1636.398;Inherit;False;False;False;False;True;1;0;COLOR;0,0,0,0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.DynamicAppendNode;124;-95.52184,-1949.8;Inherit;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.SimpleMultiplyOpNode;117;52.35445,-2005.646;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT4;0,0,0,0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;394;439.8591,-2003.189;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Normal;0;1;Sprite Normal;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;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;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=NormalsRendering;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0
|
|
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;395;439.8591,-2003.189;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Forward;0;2;Sprite 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;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;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;396;439.8591,-2003.189;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;SceneSelectionPass;0;3;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;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;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;397;439.8591,-2003.189;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;ScenePickingPass;0;4;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;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;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.VertexColorNode;341;-127.0492,-2127.783;Inherit;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.CommentaryNode;424;-2805.902,-1631.973;Inherit;False;1795.941;557.2677;;17;439;438;437;436;435;434;432;431;430;429;428;427;426;425;554;556;562;扰动;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;11;-583.9666,-1823.65;Inherit;False;Property;_S;主贴图饱和度;5;0;Create;False;0;0;0;False;1;Sub(z1);False;0;0;-1;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;13;-581.394,-1726.932;Inherit;False;Property;_V;主贴图明度;6;0;Create;False;0;0;0;False;1;Sub(z1);False;0;0;-1;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.CommentaryNode;448;-1936,-848;Inherit;False;2682.816;1467.438;;46;464;456;454;472;484;482;478;475;474;473;471;470;468;465;463;459;458;507;505;488;504;497;513;512;511;510;509;508;506;503;502;501;498;496;494;491;490;487;485;483;481;480;479;477;476;469;溶解;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.PosVertexDataNode;469;-1888,-640;Inherit;True;0;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.DynamicAppendNode;476;-1648,-592;Inherit;False;FLOAT2;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.Vector2Node;479;-1504,-784;Inherit;False;Property;_DissolveUVScale;溶解贴图UV尺寸;39;0;Create;False;0;0;0;False;1;Sub(z4);False;1,1;1,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.LerpOp;480;-1504,-624;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;481;-1312,-720;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.SamplerNode;483;-1168,-720;Inherit;True;Property;_DissolveTex;溶解贴图;35;0;Create;False;0;0;0;False;1;Sub(z4);False;-1;None;72c91df59ee8e464baef98c294cc648c;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.RangedFloatNode;485;-1024,-800;Inherit;False;Constant;_Float4;Float 4;26;0;Create;True;0;0;0;False;0;False;0.5;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;487;-1040,-528;Inherit;False;Property;_DissolveTexIntensity;溶解贴图强度;37;0;Create;False;0;0;0;False;1;Sub(z4);False;1;1;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;490;-864,-688;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TFHCRemapNode;494;-544,-736;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;-0.1;False;4;FLOAT;1.05;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;496;-544,-544;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;498;-368,-448;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.CommentaryNode;500;-980.4213,-1455.984;Inherit;False;1840.552;535.5455;;16;524;523;522;521;520;526;525;514;527;518;528;529;515;516;519;517;遮罩贴图;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.StepOpNode;501;-176,-528;Inherit;False;2;0;FLOAT;0.5;False;1;FLOAT;0.5019608;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.StepOpNode;502;-176,-624;Inherit;False;2;0;FLOAT;0.5;False;1;FLOAT;0.5019608;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleSubtractOpNode;503;0,-592;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;506;160,-672;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;508;496,-704;Inherit;False;DissolveRGBChannel;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.SmoothstepOpNode;509;-176,-416;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;510;-144,-288;Inherit;False;Property;_SoftDissolve;软溶解;36;1;[Toggle];Create;False;0;0;0;False;1;SubToggle(z4);False;0;1;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;511;0,-432;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;512;160,-432;Inherit;False;DissolveAlphaChannel;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;513;-1792,-448;Inherit;False;Property;_DissolveWorldUV;溶解使用世界UV;38;1;[Toggle];Create;False;0;0;0;False;1;SubToggle(z4);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;517;-564.4216,-1327.984;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.PannerNode;519;-276.4213,-1279.984;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;0,0;False;1;FLOAT;1;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.GetLocalVarNode;425;-2741.661,-1317.176;Inherit;False;-1;;1;0;OBJECT;;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;427;-2549.661,-1301.176;Inherit;False;3;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.FunctionNode;428;-2405.661,-1557.177;Inherit;False;Polar Coordinates;-1;;52;7dab8e02884cf104ebefaa2e788e4162;0;4;1;FLOAT2;0,0;False;2;FLOAT2;0.5,0.5;False;3;FLOAT;1;False;4;FLOAT;1;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.LerpOp;429;-2165.661,-1525.177;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.PannerNode;430;-2005.661,-1493.176;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;0,0;False;1;FLOAT;1;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.SaturateNode;431;-1541.662,-1477.176;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.Vector2Node;437;-2197.661,-1381.176;Inherit;False;Property;_FlowOffsetSpeed;扰动贴图偏移速度XY;19;0;Create;False;0;0;0;False;1;Sub(z6);False;0,0;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.Vector2Node;438;-2629.661,-1461.176;Inherit;False;Property;_FlowPolarUV;扰动贴图极坐标UV;21;0;Create;False;0;0;0;False;1;Sub(z6);False;1,1;1,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.Vector2Node;439;-2629.661,-1589.177;Inherit;False;Property;_FlowPolarPivot;扰动贴图极坐标锚点;22;0;Create;False;0;0;0;False;1;Sub(z6);False;0.5,0.5;0.5,0.5;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;405;-3004.511,-2024.71;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;407;-3116.511,-1896.71;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.NegateNode;409;-2972.511,-1912.71;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;410;-2828.511,-1992.71;Inherit;False;3;3;0;FLOAT2;0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.PannerNode;414;-2476.789,-2008.71;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;0,0;False;1;FLOAT;1;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.LerpOp;412;-2635.656,-2157.242;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.ScaleAndOffsetNode;406;-3076.442,-2152.71;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT;1;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;83;-2283.691,-2034.039;Inherit;False;True;False;True;True;1;0;FLOAT2;0,0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;82;-2284.187,-1950.721;Inherit;False;False;True;True;True;1;0;FLOAT2;0,0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.OneMinusNode;84;-2074.167,-2052.882;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.OneMinusNode;85;-2074.167,-1924.882;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;408;-3270.575,-1849.843;Inherit;False;Constant;_Float0;Float 0;23;0;Create;True;0;0;0;False;0;False;0.5;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;411;-2862.916,-2088.71;Inherit;False;Property;_UVScaleType;主贴图UV从中心缩放;9;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;SubToggle(z1);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.Vector2Node;413;-2700.511,-1976.71;Inherit;False;Property;_OffsetSpeed;主贴图偏移速度XY;11;0;Create;False;0;0;0;False;1;Sub(z1);False;0,0;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.RangedFloatNode;404;-3397.437,-1973.178;Inherit;False;Property;_UVScale;主贴图UV缩放值;10;0;Create;False;0;0;0;False;1;Sub(z1);False;1;1;0;10;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;445;-1909.75,-2107.222;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;447;-1917.316,-1940.04;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.DynamicAppendNode;90;-1755.03,-2062.061;Inherit;False;FLOAT2;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.Vector2Node;422;-1766.853,-1949.851;Inherit;False;Property;_Pivot;主贴图锚点;12;0;Create;False;0;0;0;False;1;Sub(z1);False;0.5,0.5;0.5,0.5;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.FunctionNode;421;-1571.628,-2003.954;Inherit;False;Rotator;-1;;53;3c6f90f0570571047a976ebdf151c813;0;3;8;FLOAT2;0,0;False;9;FLOAT2;0,0;False;10;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;423;-1858.834,-1809.73;Inherit;False;Property;_Angle;主贴图旋转角度;13;0;Create;False;0;0;0;False;1;Sub(z1);False;360;0;0;360;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.NegateNode;516;-557.4216,-1214.984;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;515;-693.4216,-1206.984;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;529;-967.4211,-1273.984;Inherit;False;Property;_MaskUVScale;遮罩贴图UV缩放值;28;0;Create;False;0;0;0;False;1;Sub(z5);False;1;1;0;10;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;528;-846.4213,-1151.984;Inherit;False;Constant;_Float6;Float 3;23;0;Create;True;0;0;0;False;0;False;0.5;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;518;-407.4215,-1303.984;Inherit;False;3;3;0;FLOAT2;0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.Vector2Node;527;-487.4215,-1131.984;Inherit;False;Property;_MaskOffsetSpeed;遮罩贴图偏移速度;29;0;Create;False;0;0;0;False;1;Sub(z5);False;0,0;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.LerpOp;443;235.0003,-2050.365;Inherit;False;3;0;COLOR;1,1,1,1;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.Vector2Node;525;-238.3145,-1146.718;Inherit;False;Property;_MaskPivot;遮罩贴图锚点;30;0;Create;False;0;0;0;False;1;Sub(z5);False;0.5,0.5;0.5,0.5;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.RangedFloatNode;526;-332.3144,-1007.718;Inherit;False;Property;_MaskAngle;遮罩贴图旋转角度;31;0;Create;False;0;0;0;False;1;Sub(z5);False;0;0;0;360;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.FunctionNode;520;-50.31423,-1198.92;Inherit;False;Rotator;-1;;64;3c6f90f0570571047a976ebdf151c813;0;3;8;FLOAT2;0,0;False;9;FLOAT2;0,0;False;10;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.StaticSwitch;522;488.3453,-1202.915;Inherit;False;Property;_MaskChannel;遮罩贴图使用通道;32;0;Create;False;0;0;0;False;0;False;0;1;1;True;;KeywordEnum;2;R;A;Create;True;True;All;9;1;FLOAT;0;False;0;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;523;704,-1184;Inherit;False;3;0;FLOAT;1;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;497;-656,-384;Inherit;False;Property;_DissolveEdgeWidth;溶解亮边宽度;40;0;Create;False;0;0;0;False;1;Sub(z4);False;0;0;0;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.ColorNode;504;-64,-784;Inherit;False;Property;_DissolveEdgeColor;溶解亮边颜色;34;1;[HDR];Create;False;0;0;0;False;1;Sub(z4);False;0,0,0,1;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;537;396.1878,-2030.998;Inherit;False;MainTex;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.GetLocalVarNode;505;160,-768;Inherit;False;537;MainTex;1;0;OBJECT;;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.LerpOp;507;336,-720;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;535;1072,-1808;Inherit;False;3;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;534;864,-1824;Inherit;False;False;False;False;True;1;0;COLOR;0,0,0,0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.ComponentMaskNode;533;864,-1920;Inherit;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
|
|
Node;AmplifyShaderEditor.DynamicAppendNode;536;1216,-1904;Inherit;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.GetLocalVarNode;540;368,-1904;Inherit;False;508;DissolveRGBChannel;1;0;OBJECT;;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.LerpOp;539;624,-1953.354;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.GetLocalVarNode;531;352,-1680;Inherit;False;512;DissolveAlphaChannel;1;0;OBJECT;;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;541;624,-1696;Inherit;False;3;0;FLOAT;1;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TFHCRemapNode;458;-992,432;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;-1;False;4;FLOAT;1;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TFHCRemapNode;459;-992,-32;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;-1;False;4;FLOAT;1;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.AbsOpNode;463;-816,432;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.AbsOpNode;465;-816,-32;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.DistanceOpNode;468;-608,288;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0.5;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.DistanceOpNode;470;-608,160;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0.5;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TFHCRemapNode;471;-704,432;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;4;FLOAT;2;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleDivideOpNode;473;-464,160;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;2;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;474;-480,64;Inherit;False;Constant;_Float1;Float 1;28;0;Create;True;0;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleDivideOpNode;475;-464,288;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;2;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.StaticSwitch;478;-320,144;Inherit;True;Property;_DissolveDirection;溶解方向;44;0;Create;False;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;3;Off;X_Direction;Y_Direction;Create;True;True;All;9;1;FLOAT;0;False;0;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SaturateNode;482;16,144;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;484;160,144;Inherit;False;DissolveDirection;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TFHCRemapNode;472;-704,-32;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;4;FLOAT;2;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;454;-1264,0;Inherit;False;Property;_DissolvePivotX;水平方向溶解锚点;42;0;Create;False;0;0;0;False;1;Sub(z4);False;0.5;0.5;0;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;456;-1264,416;Inherit;False;Property;_DissolvePivotY;垂直方向溶解锚点;43;0;Create;False;0;0;0;False;1;Sub(z4);False;0.5;0.5;0;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.CommentaryNode;542;-304,-2672;Inherit;False;1389.653;440.8036;;9;551;550;549;548;547;546;545;544;543;自发光;1,1,1,1;0;0
|
|
Node;AmplifyShaderEditor.PannerNode;545;16,-2560;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;0,0;False;1;FLOAT;1;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.SamplerNode;546;192,-2432;Inherit;True;Property;_GlowTex;自发光贴图;47;0;Create;False;0;0;0;False;1;Sub(z9);False;-1;None;None;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.ColorNode;547;272,-2624;Inherit;False;Property;_GlowColor;自发光颜色;46;1;[HDR];Create;False;0;0;0;False;1;Sub(z9);False;1,1,1,1;1,1,1,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;549;688,-2512;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.LerpOp;551;864,-2416;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;553;1088,-1984;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT3;0,0,0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;444;-2107.495,-2133.832;Inherit;False;Property;_HorizontalFlip;主贴图水平翻转;7;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;SubToggle(z1);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;446;-2100.841,-1839.799;Inherit;False;Property;_VerticalFlip;主贴图垂直翻转;8;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;SubToggle(z1);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;398;-3329.104,-2150.431;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;514;-896.4213,-1403.984;Inherit;False;0;521;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;543;-240,-2624;Inherit;False;0;546;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.SamplerNode;434;-1829.662,-1524.177;Inherit;True;Property;_FlowTex;扰动贴图;17;0;Create;False;0;0;0;False;1;Sub(z6);False;-1;None;None;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.StaticSwitch;548;480,-2416;Inherit;False;Property;_GlowChannel;发光贴图使用通道;49;0;Create;False;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;2;R;A;Create;True;True;All;9;1;FLOAT;0;False;0;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;435;-1540.272,-1367.985;Inherit;False;Property;_FlowIntensity;扰动强度;18;0;Create;False;0;0;0;False;1;Sub(z6);False;0.1;0.1;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;440;-1305.981,-1801.627;Inherit;False;Property;_z5_Flow;扰动;16;1;[Toggle];Create;False;0;0;0;True;1;Main(z6,_KEYWORD,on,on);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;524;544,-1072;Inherit;False;Property;_z6_Mask;遮罩;26;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;Main(z5,_KEYWORD,on,on);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;436;-2389.661,-1397.176;Inherit;False;Property;_FlowPolar;扰动贴图极坐标;20;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;SubToggle(z6);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;563;-1305.393,-1682.477;Inherit;False;3;0;FLOAT;1;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.StaticSwitch;556;-1433.582,-1247.937;Inherit;False;Property;_FlowMaskChannel;扰动遮罩贴图使用通道;25;0;Create;False;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;2;R;A;Create;True;True;All;9;1;FLOAT;0;False;0;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;441;-1054.982,-1875.627;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;562;-1480.393,-1613.477;Inherit;False;Property;_FlowMask;扰动遮罩;23;1;[Toggle];Create;False;0;0;0;False;1;SubToggle(z6);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;559;-1163.393,-1730.477;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.LerpOp;432;-1228.662,-1489.176;Inherit;False;3;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;1;FLOAT2;0
|
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;426;-2773.661,-1221.176;Inherit;False;0;434;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.RangedFloatNode;442;75.00026,-2101.665;Inherit;False;Property;_z1_MainTex;主贴图;0;1;[Toggle];Create;False;0;0;0;True;1;Main(z1,_KEYWORD,on,on);False;1;1;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;393;1588,-1936;Float;False;True;-1;2;LWGUI.LWGUI;0;16;BaseASE/Sprite/Lit/Default;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Lit;0;0;Sprite Lit;6;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;2;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;5;True;True;True;True;True;False;;False;0
|
|
Node;AmplifyShaderEditor.LerpOp;565;1198.255,-2124.205;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;1,1,1,0;False;2;FLOAT;0;False;1;COLOR;0
|
|
Node;AmplifyShaderEditor.SamplerNode;554;-1715.207,-1275.056;Inherit;True;Property;_FlowMaskTex;扰动遮罩贴图;24;0;Create;False;0;0;0;False;1;Sub(z6);False;-1;None;None;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.SamplerNode;521;204.8825,-1214.117;Inherit;True;Property;_MaskTex;遮罩贴图;27;0;Create;False;0;0;0;False;1;Sub(z6);False;-1;None;None;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.SamplerNode;1;-884.2774,-2013.045;Inherit;True;Property;_MainTex;主贴图;2;0;Create;False;0;0;0;False;1;Sub(z1);False;1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;0;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;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.RangedFloatNode;538;464,-1808;Inherit;False;Property;_z4_Dissolve;溶解;33;1;[Toggle];Create;False;0;0;0;True;1;Main(z4,_KEYWORD,on,on);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;12;-582.9666,-1928.496;Inherit;False;Property;_H;主贴图色相;4;0;Create;False;0;0;0;False;1;Sub(z1);False;0;0;-1;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;550;560,-2320;Inherit;False;Property;_z9_Glow;自发光;45;1;[Toggle];Create;False;0;2;No;0;Yes;1;0;False;1;Main(z9,_KEYWORD,on,on);False;0;0;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.Vector2Node;544;-224,-2496;Inherit;False;Property;_GlowOffsetSpeed;自发光贴图偏移速度;48;0;Create;False;0;0;0;False;1;Sub(z9);False;0,0;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
|
Node;AmplifyShaderEditor.ColorNode;564;963.3851,-2150.442;Inherit;False;Property;_LerpColor;替换颜色;3;1;[HDR];Create;False;0;0;0;False;1;Sub(z1);False;1,1,1,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.SamplerNode;567;1117.263,-1489.843;Inherit;True;Property;_NormalMap;法线贴图;14;1;[Normal];Create;False;0;0;0;False;1;Sub(z1);False;-1;None;None;True;0;False;bump;Auto;True;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;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
Node;AmplifyShaderEditor.RangedFloatNode;566;959.4102,-1490.754;Inherit;False;Property;_NormalIntensity;法线强度;15;0;Create;False;0;0;0;False;1;Sub(z1);False;1;5;0;0;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;464;-848,208;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;477;-1744,-768;Inherit;False;0;483;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.GetLocalVarNode;488;-768,-528;Inherit;False;484;DissolveDirection;1;0;OBJECT;;False;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.RangedFloatNode;491;-832,-784;Inherit;False;Property;qw;溶解程度;41;0;Create;False;0;0;0;False;1;Sub(z4);False;0;0;0;1;0;1;FLOAT;0
|
|
Node;AmplifyShaderEditor.ColorNode;345;-157.1243,-1794.992;Inherit;False;Property;_MainColor;主颜色;1;1;[HDR];Create;False;0;0;0;False;1;Sub(z1);False;1,1,1,1;1,1,1,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
|
WireConnection;111;0;1;0
|
|
WireConnection;110;10;111;0
|
|
WireConnection;110;11;12;0
|
|
WireConnection;110;12;11;0
|
|
WireConnection;110;13;13;0
|
|
WireConnection;123;0;1;0
|
|
WireConnection;124;0;110;0
|
|
WireConnection;124;3;123;0
|
|
WireConnection;117;0;341;0
|
|
WireConnection;117;1;345;0
|
|
WireConnection;117;2;124;0
|
|
WireConnection;476;0;469;1
|
|
WireConnection;476;1;469;2
|
|
WireConnection;480;0;477;0
|
|
WireConnection;480;1;476;0
|
|
WireConnection;480;2;513;0
|
|
WireConnection;481;0;479;0
|
|
WireConnection;481;1;480;0
|
|
WireConnection;483;1;481;0
|
|
WireConnection;490;0;485;0
|
|
WireConnection;490;1;483;1
|
|
WireConnection;490;2;487;0
|
|
WireConnection;494;0;491;0
|
|
WireConnection;496;0;490;0
|
|
WireConnection;496;1;488;0
|
|
WireConnection;498;0;496;0
|
|
WireConnection;498;1;497;0
|
|
WireConnection;501;0;494;0
|
|
WireConnection;501;1;498;0
|
|
WireConnection;502;0;494;0
|
|
WireConnection;502;1;496;0
|
|
WireConnection;503;0;501;0
|
|
WireConnection;503;1;502;0
|
|
WireConnection;506;0;504;0
|
|
WireConnection;506;1;503;0
|
|
WireConnection;508;0;507;0
|
|
WireConnection;509;0;494;0
|
|
WireConnection;509;1;498;0
|
|
WireConnection;511;0;501;0
|
|
WireConnection;511;1;509;0
|
|
WireConnection;511;2;510;0
|
|
WireConnection;512;0;511;0
|
|
WireConnection;517;0;514;0
|
|
WireConnection;517;1;529;0
|
|
WireConnection;519;0;518;0
|
|
WireConnection;519;2;527;0
|
|
WireConnection;427;1;426;0
|
|
WireConnection;427;2;425;0
|
|
WireConnection;428;1;427;0
|
|
WireConnection;428;2;439;0
|
|
WireConnection;428;3;438;1
|
|
WireConnection;428;4;438;2
|
|
WireConnection;429;0;427;0
|
|
WireConnection;429;1;428;0
|
|
WireConnection;429;2;436;0
|
|
WireConnection;430;0;429;0
|
|
WireConnection;430;2;437;0
|
|
WireConnection;431;0;434;1
|
|
WireConnection;405;0;398;0
|
|
WireConnection;405;1;404;0
|
|
WireConnection;407;0;404;0
|
|
WireConnection;407;1;408;0
|
|
WireConnection;409;0;407;0
|
|
WireConnection;410;0;405;0
|
|
WireConnection;410;1;409;0
|
|
WireConnection;410;2;408;0
|
|
WireConnection;414;0;412;0
|
|
WireConnection;414;2;413;0
|
|
WireConnection;412;0;406;0
|
|
WireConnection;412;1;410;0
|
|
WireConnection;412;2;411;0
|
|
WireConnection;406;0;398;0
|
|
WireConnection;406;1;404;0
|
|
WireConnection;83;0;414;0
|
|
WireConnection;82;0;414;0
|
|
WireConnection;84;0;83;0
|
|
WireConnection;85;0;82;0
|
|
WireConnection;445;0;83;0
|
|
WireConnection;445;1;84;0
|
|
WireConnection;445;2;444;0
|
|
WireConnection;447;0;82;0
|
|
WireConnection;447;1;85;0
|
|
WireConnection;447;2;446;0
|
|
WireConnection;90;0;445;0
|
|
WireConnection;90;1;447;0
|
|
WireConnection;421;8;90;0
|
|
WireConnection;421;9;422;0
|
|
WireConnection;421;10;423;0
|
|
WireConnection;516;0;515;0
|
|
WireConnection;515;0;529;0
|
|
WireConnection;515;1;528;0
|
|
WireConnection;518;0;517;0
|
|
WireConnection;518;1;516;0
|
|
WireConnection;518;2;528;0
|
|
WireConnection;443;1;117;0
|
|
WireConnection;443;2;442;0
|
|
WireConnection;520;8;519;0
|
|
WireConnection;520;9;525;0
|
|
WireConnection;520;10;526;0
|
|
WireConnection;522;1;521;1
|
|
WireConnection;522;0;521;4
|
|
WireConnection;523;1;522;0
|
|
WireConnection;523;2;524;0
|
|
WireConnection;537;0;443;0
|
|
WireConnection;507;0;505;0
|
|
WireConnection;507;1;506;0
|
|
WireConnection;507;2;503;0
|
|
WireConnection;535;0;534;0
|
|
WireConnection;535;1;523;0
|
|
WireConnection;535;2;541;0
|
|
WireConnection;534;0;539;0
|
|
WireConnection;533;0;539;0
|
|
WireConnection;536;0;565;0
|
|
WireConnection;536;3;535;0
|
|
WireConnection;539;0;537;0
|
|
WireConnection;539;1;540;0
|
|
WireConnection;539;2;538;0
|
|
WireConnection;541;1;531;0
|
|
WireConnection;541;2;538;0
|
|
WireConnection;458;0;456;0
|
|
WireConnection;459;0;454;0
|
|
WireConnection;463;0;458;0
|
|
WireConnection;465;0;459;0
|
|
WireConnection;468;0;464;2
|
|
WireConnection;468;1;456;0
|
|
WireConnection;470;0;464;1
|
|
WireConnection;470;1;454;0
|
|
WireConnection;471;0;463;0
|
|
WireConnection;473;0;470;0
|
|
WireConnection;473;1;472;0
|
|
WireConnection;475;0;468;0
|
|
WireConnection;475;1;471;0
|
|
WireConnection;478;1;474;0
|
|
WireConnection;478;0;473;0
|
|
WireConnection;478;2;475;0
|
|
WireConnection;482;0;478;0
|
|
WireConnection;484;0;482;0
|
|
WireConnection;472;0;465;0
|
|
WireConnection;545;0;543;0
|
|
WireConnection;545;2;544;0
|
|
WireConnection;546;1;545;0
|
|
WireConnection;549;0;547;0
|
|
WireConnection;549;1;548;0
|
|
WireConnection;551;1;549;0
|
|
WireConnection;551;2;550;0
|
|
WireConnection;553;0;551;0
|
|
WireConnection;553;1;533;0
|
|
WireConnection;434;1;430;0
|
|
WireConnection;548;1;546;1
|
|
WireConnection;548;0;546;4
|
|
WireConnection;563;1;556;0
|
|
WireConnection;563;2;562;0
|
|
WireConnection;556;1;554;1
|
|
WireConnection;556;0;554;4
|
|
WireConnection;441;0;421;0
|
|
WireConnection;441;1;432;0
|
|
WireConnection;441;2;559;0
|
|
WireConnection;559;0;440;0
|
|
WireConnection;559;1;563;0
|
|
WireConnection;432;0;421;0
|
|
WireConnection;432;1;431;0
|
|
WireConnection;432;2;435;0
|
|
WireConnection;393;1;536;0
|
|
WireConnection;393;3;567;0
|
|
WireConnection;565;0;553;0
|
|
WireConnection;565;1;564;0
|
|
WireConnection;565;2;564;4
|
|
WireConnection;521;1;520;0
|
|
WireConnection;1;1;441;0
|
|
WireConnection;567;5;566;0
|
|
ASEEND*/
|
|
//CHKSM=A8012B39F7D5D8F155874DEE3DBE15C12EF97A48 |