OvertakingLegend/Assets/Shader/OutLine.shader

472 lines
30 KiB
Plaintext
Raw Normal View History

2025-03-24 03:08:22 +00:00
// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "ASE/Base/OutLine"
{
Properties
{
_Color1("Color", Color) = (1,1,1,1)
_Texture1("Texture", 2D) = "white" {}
_HSVC1("HSVC", Vector) = (0,0,0,0)
_ShaowColor1("ShaowColor", Color) = (0.5711552,0.6109352,0.8018868,1)
_Boundry1("Boundry", Range( 0 , 1)) = 0.5
_Smooth1("Smooth", Range( 0 , 1)) = 0.5
_HLColor1("HLColor", Color) = (0,0,0,1)
_HLBoundry1("HLBoundry", Range( 0 , 1)) = 0
_HLSmooth1("HLSmooth", Range( 0 , 1)) = 0.5
[HDR]_FreColor1("FreColor", Color) = (0,0,0,1)
_FreBoundry1("FreBoundry", Range( 0 , 1)) = 0.3494399
_FreSmooth1("FreSmooth", Range( 0 , 1)) = 0.4470588
[HDR]_EmissionColor1("EmissionColor", Color) = (0,0,0,0)
_OutLineColor("OutLine Color", Color) = (0.7015347,0.6714578,0.745283,1)
[Toggle]_OulineSolidColor("OulineSolidColor", Float) = 0
_OutLineWidth("OutLine Width", Float) = 0.03
_EmissionTex1("EmissionTex", 2D) = "white" {}
_NormalTex1("NormalTex", 2D) = "bump" {}
_NormalInt1("NormalInt", Range( 0 , 1)) = 0
[Enum(UnityEngine.Rendering.CullMode)]_CullMode1("CullMode", Float) = 2
[HideInInspector] _texcoord( "", 2D ) = "white" {}
[HideInInspector] __dirty( "", Int ) = 1
}
SubShader
{
Tags{ }
Cull Front
CGPROGRAM
#pragma target 3.0
#pragma surface outlineSurf Outline nofog keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nometa noforwardadd vertex:outlineVertexDataFunc
void outlineVertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
float OutlineWidth201 = _OutLineWidth;
float outlineVar = OutlineWidth201;
v.vertex.xyz *= ( 1 + outlineVar);
}
inline half4 LightingOutline( SurfaceOutput s, half3 lightDir, half atten ) { return half4 ( 0,0,0, s.Alpha); }
void outlineSurf( Input i, inout SurfaceOutput o )
{
float4 OutlineColor202 = _OutLineColor;
float2 uv_Texture1 = i.uv_texcoord * _Texture1_ST.xy + _Texture1_ST.zw;
float4 lerpResult4_g43 = lerp( float4( float3(0.5,0.5,0.5) , 0.0 ) , tex2D( _Texture1, uv_Texture1 ) , ( _HSVC1.w + 1.0 ));
float3 hsvTorgb6_g43 = RGBToHSV( lerpResult4_g43.xyz );
float3 hsvTorgb10_g43 = HSVToRGB( float3(( _HSVC1.x + hsvTorgb6_g43.x ),( ( _HSVC1.y + 1.0 ) * hsvTorgb6_g43.y ),( ( _HSVC1.z + 1.0 ) * hsvTorgb6_g43.z )) );
float3 appendResult11_g43 = (float3(hsvTorgb10_g43));
float3 MainTex182 = appendResult11_g43;
float4 MainColor181 = _Color1;
float temp_output_42_0_g42 = (-1.0 + (0.5 - 0.0) * (1.0 - -1.0) / (1.0 - 0.0));
float3 ase_worldPos = i.worldPos;
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
float3 ase_worldlightDir = 0;
#else //aseld
float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
#endif //aseld
float2 uv_NormalTex1 = i.uv_texcoord * _NormalTex1_ST.xy + _NormalTex1_ST.zw;
float3 lerpResult12_g37 = lerp( float3(0,0,1) , UnpackNormal( tex2D( _NormalTex1, uv_NormalTex1 ) ) , (0.0 + (_NormalInt1 - 0.0) * (3.0 - 0.0) / (1.0 - 0.0)));
float3 normalizeResult14_g37 = normalize( lerpResult12_g37 );
float3 temp_output_153_21 = (WorldNormalVector( i , normalizeResult14_g37 ));
float dotResult154 = dot( ase_worldlightDir , temp_output_153_21 );
float LightingModel157 = dotResult154;
float temp_output_38_0_g42 = LightingModel157;
float smoothstepResult39_g42 = smoothstep( ( temp_output_42_0_g42 - 0.5 ) , ( temp_output_42_0_g42 + 0.5 ) , temp_output_38_0_g42);
float lerpResult46_g42 = lerp( 1.0 , 0.0 , smoothstepResult39_g42);
float smoothstepResult56_g42 = smoothstep( 0.0 , 0.5 , 1);
float temp_output_14_0_g42 = (-1.0 + (_Boundry1 - 0.0) * (1.0 - -1.0) / (1.0 - 0.0));
float temp_output_37_0_g42 = _Smooth1;
float smoothstepResult20_g42 = smoothstep( ( temp_output_14_0_g42 - temp_output_37_0_g42 ) , ( temp_output_14_0_g42 + temp_output_37_0_g42 ) , temp_output_38_0_g42);
float4 lerpResult28_g42 = lerp( _ShaowColor1 , float4( 1,1,1,0 ) , ( saturate( ( lerpResult46_g42 + smoothstepResult56_g42 ) ) * smoothstepResult20_g42 ));
float4 ShadowColor183 = lerpResult28_g42;
float4 temp_output_192_0 = ( float4( MainTex182 , 0.0 ) * MainColor181 * ShadowColor183 );
float4 OutLineColorMultiply198 = temp_output_192_0;
o.Emission = (( _OulineSolidColor )?( OutlineColor202 ):( ( OutlineColor202 * OutLineColorMultiply198 ) )).rgb;
o.Normal = float3(0,0,-1);
}
ENDCG
Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
Cull [_CullMode1]
CGINCLUDE
#include "UnityPBSLighting.cginc"
#include "UnityCG.cginc"
#include "Lighting.cginc"
#pragma target 4.6
#ifdef UNITY_PASS_SHADOWCASTER
#undef INTERNAL_DATA
#undef WorldReflectionVector
#undef WorldNormalVector
#define INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;
#define WorldReflectionVector(data,normal) reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal), dot(data.internalSurfaceTtoW2,normal)))
#define WorldNormalVector(data,normal) half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal), dot(data.internalSurfaceTtoW2,normal))
#endif
struct Input
{
float2 uv_texcoord;
float3 worldPos;
float3 worldNormal;
INTERNAL_DATA
};
struct SurfaceOutputCustomLightingCustom
{
half3 Albedo;
half3 Normal;
half3 Emission;
half Metallic;
half Smoothness;
half Occlusion;
half Alpha;
Input SurfInput;
UnityGIInput GIData;
};
uniform float _CullMode1;
uniform float4 _HSVC1;
uniform sampler2D _Texture1;
uniform float4 _Texture1_ST;
uniform float4 _Color1;
uniform float4 _ShaowColor1;
uniform sampler2D _NormalTex1;
uniform float4 _NormalTex1_ST;
uniform float _NormalInt1;
uniform float _Boundry1;
uniform float _Smooth1;
uniform float4 _HLColor1;
uniform float _HLBoundry1;
uniform float _HLSmooth1;
uniform float _FreBoundry1;
uniform float _FreSmooth1;
uniform float4 _FreColor1;
uniform sampler2D _EmissionTex1;
uniform float4 _EmissionTex1_ST;
uniform float4 _EmissionColor1;
uniform float _OulineSolidColor;
uniform float4 _OutLineColor;
uniform float _OutLineWidth;
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);
}
void vertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
float3 OutLine109 = 0;
v.vertex.xyz += OutLine109;
v.vertex.w = 1;
}
inline half4 LightingStandardCustomLighting( inout SurfaceOutputCustomLightingCustom s, half3 viewDir, UnityGI gi )
{
UnityGIInput data = s.GIData;
Input i = s.SurfInput;
half4 c = 0;
#ifdef UNITY_PASS_FORWARDBASE
float ase_lightAtten = data.atten;
if( _LightColor0.a == 0)
ase_lightAtten = 0;
#else
float3 ase_lightAttenRGB = gi.light.color / ( ( _LightColor0.rgb ) + 0.000001 );
float ase_lightAtten = max( max( ase_lightAttenRGB.r, ase_lightAttenRGB.g ), ase_lightAttenRGB.b );
#endif
#if defined(HANDLE_SHADOWS_BLENDING_IN_GI)
half bakedAtten = UnitySampleBakedOcclusion(data.lightmapUV.xy, data.worldPos);
float zDist = dot(_WorldSpaceCameraPos - data.worldPos, UNITY_MATRIX_V[2].xyz);
float fadeDist = UnityComputeShadowFadeDistance(data.worldPos, zDist);
ase_lightAtten = UnityMixRealtimeAndBakedShadows(data.atten, bakedAtten, UnityComputeShadowFade(fadeDist));
#endif
float2 uv_Texture1 = i.uv_texcoord * _Texture1_ST.xy + _Texture1_ST.zw;
float4 lerpResult4_g43 = lerp( float4( float3(0.5,0.5,0.5) , 0.0 ) , tex2D( _Texture1, uv_Texture1 ) , ( _HSVC1.w + 1.0 ));
float3 hsvTorgb6_g43 = RGBToHSV( lerpResult4_g43.xyz );
float3 hsvTorgb10_g43 = HSVToRGB( float3(( _HSVC1.x + hsvTorgb6_g43.x ),( ( _HSVC1.y + 1.0 ) * hsvTorgb6_g43.y ),( ( _HSVC1.z + 1.0 ) * hsvTorgb6_g43.z )) );
float3 appendResult11_g43 = (float3(hsvTorgb10_g43));
float3 MainTex182 = appendResult11_g43;
float4 MainColor181 = _Color1;
float temp_output_42_0_g42 = (-1.0 + (0.5 - 0.0) * (1.0 - -1.0) / (1.0 - 0.0));
float3 ase_worldPos = i.worldPos;
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
float3 ase_worldlightDir = 0;
#else //aseld
float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
#endif //aseld
float2 uv_NormalTex1 = i.uv_texcoord * _NormalTex1_ST.xy + _NormalTex1_ST.zw;
float3 lerpResult12_g37 = lerp( float3(0,0,1) , UnpackNormal( tex2D( _NormalTex1, uv_NormalTex1 ) ) , (0.0 + (_NormalInt1 - 0.0) * (3.0 - 0.0) / (1.0 - 0.0)));
float3 normalizeResult14_g37 = normalize( lerpResult12_g37 );
float3 temp_output_153_21 = (WorldNormalVector( i , normalizeResult14_g37 ));
float dotResult154 = dot( ase_worldlightDir , temp_output_153_21 );
float LightingModel157 = dotResult154;
float temp_output_38_0_g42 = LightingModel157;
float smoothstepResult39_g42 = smoothstep( ( temp_output_42_0_g42 - 0.5 ) , ( temp_output_42_0_g42 + 0.5 ) , temp_output_38_0_g42);
float lerpResult46_g42 = lerp( 1.0 , 0.0 , smoothstepResult39_g42);
float smoothstepResult56_g42 = smoothstep( 0.0 , 0.5 , ase_lightAtten);
float temp_output_14_0_g42 = (-1.0 + (_Boundry1 - 0.0) * (1.0 - -1.0) / (1.0 - 0.0));
float temp_output_37_0_g42 = _Smooth1;
float smoothstepResult20_g42 = smoothstep( ( temp_output_14_0_g42 - temp_output_37_0_g42 ) , ( temp_output_14_0_g42 + temp_output_37_0_g42 ) , temp_output_38_0_g42);
float4 lerpResult28_g42 = lerp( _ShaowColor1 , float4( 1,1,1,0 ) , ( saturate( ( lerpResult46_g42 + smoothstepResult56_g42 ) ) * smoothstepResult20_g42 ));
float4 ShadowColor183 = lerpResult28_g42;
float4 temp_output_192_0 = ( float4( MainTex182 , 0.0 ) * MainColor181 * ShadowColor183 );
float temp_output_4_0_g46 = (1.0 + (_HLBoundry1 - 0.0) * (0.0 - 1.0) / (1.0 - 0.0));
float temp_output_15_0_g46 = _HLSmooth1;
float3 ase_worldViewDir = normalize( UnityWorldSpaceViewDir( ase_worldPos ) );
float3 normalizeResult18_g44 = normalize( ( ase_worldlightDir + ase_worldViewDir ) );
float dotResult156 = dot( temp_output_153_21 , normalizeResult18_g44 );
float LightingModel_HL164 = dotResult156;
float smoothstepResult8_g46 = smoothstep( ( temp_output_4_0_g46 - temp_output_15_0_g46 ) , ( temp_output_4_0_g46 + temp_output_15_0_g46 ) , LightingModel_HL164);
float4 lerpResult9_g46 = lerp( float4( 0,0,0,0 ) , _HLColor1 , smoothstepResult8_g46);
float4 HighLightColor188 = lerpResult9_g46;
float temp_output_22_0_g47 = ( 1.0 - (-0.2 + (_FreBoundry1 - 0.0) * (1.0 - -0.2) / (1.0 - 0.0)) );
float temp_output_30_0_g47 = _FreSmooth1;
float3 WorldNormal_NormalTex165 = temp_output_153_21;
float fresnelNdotV26_g47 = dot( WorldNormal_NormalTex165, ase_worldViewDir );
float fresnelNode26_g47 = ( 0.0 + 1.0 * pow( 1.0 - fresnelNdotV26_g47, 1.0 ) );
float smoothstepResult28_g47 = smoothstep( ( temp_output_22_0_g47 - temp_output_30_0_g47 ) , ( temp_output_22_0_g47 + temp_output_30_0_g47 ) , fresnelNode26_g47);
float4 temp_output_14_0_g47 = _FreColor1;
float4 Fresnel189 = ( smoothstepResult28_g47 * temp_output_14_0_g47 * (temp_output_14_0_g47).a );
float2 uv_EmissionTex1 = i.uv_texcoord * _EmissionTex1_ST.xy + _EmissionTex1_ST.zw;
float4 Emission190 = ( tex2D( _EmissionTex1, uv_EmissionTex1 ) * _EmissionColor1 );
c.rgb = ( temp_output_192_0 + HighLightColor188 + Fresnel189 + Emission190 ).rgb;
c.a = 1;
return c;
}
inline void LightingStandardCustomLighting_GI( inout SurfaceOutputCustomLightingCustom s, UnityGIInput data, inout UnityGI gi )
{
s.GIData = data;
}
void surf( Input i , inout SurfaceOutputCustomLightingCustom o )
{
o.SurfInput = i;
o.Normal = float3(0,0,1);
}
ENDCG
CGPROGRAM
#pragma surface surf StandardCustomLighting keepalpha fullforwardshadows exclude_path:deferred noambient novertexlights nolightmap nodirlightmap noforwardadd vertex:vertexDataFunc
ENDCG
Pass
{
Name "ShadowCaster"
Tags{ "LightMode" = "ShadowCaster" }
ZWrite On
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma target 4.6
#pragma multi_compile_shadowcaster
#pragma multi_compile UNITY_PASS_SHADOWCASTER
#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2
#include "HLSLSupport.cginc"
#if ( SHADER_API_D3D11 || SHADER_API_GLCORE || SHADER_API_GLES || SHADER_API_GLES3 || SHADER_API_METAL || SHADER_API_VULKAN )
#define CAN_SKIP_VPOS
#endif
#include "UnityCG.cginc"
#include "Lighting.cginc"
#include "UnityPBSLighting.cginc"
struct v2f
{
V2F_SHADOW_CASTER;
float2 customPack1 : TEXCOORD1;
float4 tSpace0 : TEXCOORD2;
float4 tSpace1 : TEXCOORD3;
float4 tSpace2 : TEXCOORD4;
UNITY_VERTEX_INPUT_INSTANCE_ID
UNITY_VERTEX_OUTPUT_STEREO
};
v2f vert( appdata_full v )
{
v2f o;
UNITY_SETUP_INSTANCE_ID( v );
UNITY_INITIALIZE_OUTPUT( v2f, o );
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o );
UNITY_TRANSFER_INSTANCE_ID( v, o );
Input customInputData;
vertexDataFunc( v, customInputData );
float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
half3 worldNormal = UnityObjectToWorldNormal( v.normal );
half3 worldTangent = UnityObjectToWorldDir( v.tangent.xyz );
half tangentSign = v.tangent.w * unity_WorldTransformParams.w;
half3 worldBinormal = cross( worldNormal, worldTangent ) * tangentSign;
o.tSpace0 = float4( worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x );
o.tSpace1 = float4( worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y );
o.tSpace2 = float4( worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z );
o.customPack1.xy = customInputData.uv_texcoord;
o.customPack1.xy = v.texcoord;
TRANSFER_SHADOW_CASTER_NORMALOFFSET( o )
return o;
}
half4 frag( v2f IN
#if !defined( CAN_SKIP_VPOS )
, UNITY_VPOS_TYPE vpos : VPOS
#endif
) : SV_Target
{
UNITY_SETUP_INSTANCE_ID( IN );
Input surfIN;
UNITY_INITIALIZE_OUTPUT( Input, surfIN );
surfIN.uv_texcoord = IN.customPack1.xy;
float3 worldPos = float3( IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w );
half3 worldViewDir = normalize( UnityWorldSpaceViewDir( worldPos ) );
surfIN.worldPos = worldPos;
surfIN.worldNormal = float3( IN.tSpace0.z, IN.tSpace1.z, IN.tSpace2.z );
surfIN.internalSurfaceTtoW0 = IN.tSpace0.xyz;
surfIN.internalSurfaceTtoW1 = IN.tSpace1.xyz;
surfIN.internalSurfaceTtoW2 = IN.tSpace2.xyz;
SurfaceOutputCustomLightingCustom o;
UNITY_INITIALIZE_OUTPUT( SurfaceOutputCustomLightingCustom, o )
surf( surfIN, o );
#if defined( CAN_SKIP_VPOS )
float2 vpos = IN.pos;
#endif
SHADOW_CASTER_FRAGMENT( IN )
}
ENDCG
}
}
Fallback "Diffuse"
CustomEditor "ASEMaterialInspector"
}
/*ASEBEGIN
Version=18935
443;120;1495;859;22.26712;374.7466;1.009998;True;False
Node;AmplifyShaderEditor.CommentaryNode;143;-1452.539,-896.6485;Inherit;False;1018.887;478.1857;LightingModel;10;165;164;157;156;155;154;153;152;151;150;光照模型;1,1,1,1;0;0
Node;AmplifyShaderEditor.SamplerNode;150;-1425.074,-754.6866;Inherit;True;Property;_NormalTex1;NormalTex;17;0;Create;True;0;0;0;False;0;False;-1;None;bbab0a6f7bae9cf42bf057d8ee2755f6;True;0;True;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;151;-1414.173,-841.3856;Inherit;False;Property;_NormalInt1;NormalInt;18;0;Create;True;0;0;0;False;0;False;0;0.5;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;152;-1096.608,-846.6555;Inherit;False;False;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.FunctionNode;153;-1119.26,-700.4174;Inherit;False;LightingModel_Normal_Tex;-1;;37;199a4b449c0174475b6993902d3051f8;0;2;20;FLOAT3;0,0,0;False;17;FLOAT;0;False;1;FLOAT3;21
Node;AmplifyShaderEditor.DotProductOpNode;154;-804.7198,-842.8646;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;144;-1248.759,-370.27;Inherit;False;797.1252;444.5404;Comment;6;182;181;177;174;161;158;基础贴图和颜色;1,1,1,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;145;-1053.242,110.3768;Inherit;False;824.6014;385.3089;ShadowColor;6;183;171;163;162;160;159;暗面颜色;1,1,1,1;0;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;157;-633.8799,-845.4946;Float;False;LightingModel;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;159;-727.6228,169.8473;Inherit;False;157;LightingModel;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;160;-1030.081,408.9082;Inherit;False;Property;_Smooth1;Smooth;5;0;Create;True;0;0;0;False;0;False;0.5;0.5;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.SamplerNode;158;-1222.759,-323.27;Inherit;True;Property;_Texture1;Texture;1;0;Create;True;0;0;0;False;0;False;-1;750b1bd7ba8bd28489650de6d0a95cc5;750b1bd7ba8bd28489650de6d0a95cc5;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;162;-1029.818,330.0695;Inherit;False;Property;_Boundry1;Boundry;4;0;Create;True;0;0;0;False;0;False;0.5;0.5;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;163;-1039.196,153.8516;Inherit;False;Property;_ShaowColor1;ShaowColor;3;0;Create;True;0;0;0;False;0;False;0.5711552,0.6109352,0.8018868,1;0.5711552,0.6109352,0.8018868,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.Vector4Node;161;-1166.697,-109.6101;Inherit;False;Property;_HSVC1;HSVC;2;0;Create;True;0;0;0;False;0;False;0,0,0,0;0,0,0,0;0;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ColorNode;174;-945.1716,-103.6897;Inherit;False;Property;_Color1;Color;0;0;Create;True;0;0;0;False;0;False;1,1,1,1;1,1,1,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.FunctionNode;171;-735.9458,257.4958;Inherit;True;Light_Shadow;-1;;42;7fd334ea8a37541079f58347518ddcb5;0;4;38;FLOAT;0;False;35;COLOR;0,0,0,0;False;36;FLOAT;0;False;37;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.FunctionNode;177;-903.6965,-315.6101;Inherit;False;Image_HSVC;-1;;43;ca84aa6554d49423ca5ab36222e90165;0;5;39;FLOAT4;0,0,0,0;False;32;FLOAT;0;False;34;FLOAT;0;False;35;FLOAT;0;False;36;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;181;-675.6328,-104.5228;Inherit;False;MainColor;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;182;-675.9409,-319.4876;Inherit;False;MainTex;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.CommentaryNode;149;-147.6168,149.7746;Inherit;False;914.2082;680.9962;;11;196;195;194;193;192;191;187;186;185;110;198;最终输出区域;1,1,1,1;0;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;183;-426.4698,253.9213;Float;False;ShadowColor;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;185;-89.29975,326.6297;Inherit;False;181;MainColor;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;186;-90.56379,248.5104;Inherit;False;182;MainTex;1;0;OBJECT;;False;1;FLOAT3;0
Node;AmplifyShaderEditor.GetLocalVarNode;187;-97.61677,402.7171;Inherit;False;183;ShadowColor;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.FunctionNode;155;-1122.348,-511.3527;Inherit;False;LightingModel_Dir_HighLight;-1;;44;7a515b594b1a08c4e8f9a74b40ac93eb;0;0;1;FLOAT3;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;192;163.4713,323.8672;Inherit;False;3;3;0;FLOAT3;0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.ColorNode;133;781.9042,317.7341;Float;False;Property;_OutLineColor;OutLine Color;13;0;Create;True;0;0;0;False;0;False;0.7015347,0.6714578,0.745283,1;0.5184674,0.5204919,0.5754717,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.RegisterLocalVarNode;202;995.3523,317.0618;Inherit;False;OutlineColor;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;198;317.7319,267.3582;Inherit;False;OutLineColorMultiply;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.DotProductOpNode;156;-800.7198,-535.7074;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;67;480.229,-312.9416;Inherit;False;872.025;338.183;;8;109;32;33;132;199;204;205;203;描边;1,1,1,1;0;0
Node;AmplifyShaderEditor.GetLocalVarNode;132;493.6726,-132.5023;Inherit;False;198;OutLineColorMultiply;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;165;-687.1628,-703.5707;Inherit;False;WorldNormal_NormalTex;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.GetLocalVarNode;203;530.4333,-211.3948;Inherit;False;202;OutlineColor;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;164;-662.7649,-514.4539;Float;False;LightingModel_HL;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;35;793.5578,215.2531;Inherit;False;Property;_OutLineWidth;OutLine Width;15;0;Create;True;0;0;0;False;0;False;0.03;0.15;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;148;-1037.798,533.5208;Inherit;False;805.474;396.9965;HighLightColor;6;188;179;178;176;170;168;高光颜色;1,1,1,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;147;-380.3026,-827.3555;Inherit;False;692.8439;415.5112;Emission;4;190;184;172;167;自发光;1,1,1,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;146;-398.8258,-345.3999;Inherit;False;818.8379;392.7597;Fresnel;6;189;180;175;173;169;166;菲涅尔;1,1,1,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;170;-1012.5,759.4832;Inherit;False;Property;_HLBoundry1;HLBoundry;7;0;Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;175;-368.8168,-283.1854;Inherit;False;165;WorldNormal_NormalTex;1;0;OBJECT;;False;1;FLOAT3;0
Node;AmplifyShaderEditor.RangedFloatNode;169;-101.9168,-47.98735;Inherit;False;Property;_FreSmooth1;FreSmooth;11;0;Create;True;0;0;0;False;0;False;0.4470588;0.715;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;178;-1013.034,835.9543;Inherit;False;Property;_HLSmooth1;HLSmooth;8;0;Create;True;0;0;0;False;0;False;0.5;0.2;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;173;-337.5097,-137.0081;Inherit;False;Property;_FreColor1;FreColor;9;1;[HDR];Create;True;0;0;0;False;0;False;0,0,0,1;0.6273585,0.7726448,1,0.5019608;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ColorNode;172;-310.6928,-588.8717;Inherit;False;Property;_EmissionColor1;EmissionColor;12;1;[HDR];Create;True;0;0;0;False;0;False;0,0,0,0;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.RangedFloatNode;166;-101.1668,-125.938;Inherit;False;Property;_FreBoundry1;FreBoundry;10;0;Create;True;0;0;0;False;0;False;0.3494399;0.165;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.SamplerNode;167;-356.5307,-777.8665;Inherit;True;Property;_EmissionTex1;EmissionTex;16;0;Create;True;0;0;0;False;0;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;176;-973.2905,590.366;Inherit;False;Property;_HLColor1;HLColor;6;0;Create;True;0;0;0;False;0;False;0,0,0,1;0.3,0.3,0.3,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;33;731.5823,-193.092;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;168;-715.1248,635.9065;Inherit;False;164;LightingModel_HL;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;201;959.1393,217.4769;Inherit;False;OutlineWidth;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;205;892.5957,-254.0192;Inherit;False;202;OutlineColor;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;204;754.9424,-57.69825;Inherit;False;201;OutlineWidth;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.ToggleSwitchNode;199;1134.501,-197.1484;Inherit;False;Property;_OulineSolidColor;OulineSolidColor;14;0;Create;True;0;0;0;False;0;False;0;True;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;184;-64.8238,-775.2585;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.FunctionNode;180;-78.9228,-291.5211;Inherit;False;Light_Fresnel;-1;;47;3627a339a876842a381f1d0fa05ee3fd;0;4;31;FLOAT3;0,0,0;False;14;COLOR;0,0,0,0;False;16;FLOAT;0;False;30;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.FunctionNode;179;-716.4038,724.0826;Inherit;False;Light_HighLight;-1;;46;0266fca0a32984b5d998165239f13ee6;0;4;16;FLOAT;0;False;13;COLOR;0,0,0,0;False;14;FLOAT;0;False;15;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.OutlineNode;32;971.6449,-85.1924;Inherit;False;1;True;None;0;0;Front;True;True;True;True;0;False;-1;3;0;FLOAT3;0,0,0;False;2;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;189;208.0742,-295.6928;Inherit;False;Fresnel;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;188;-443.6808,718.7977;Inherit;False;HighLightColor;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;190;117.9582,-777.4925;Inherit;False;Emission;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;194;-5.253848,619.5052;Inherit;False;189;Fresnel;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;109;1161.243,-85.20656;Inherit;False;OutLine;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.GetLocalVarNode;193;-1.934755,715.7709;Inherit;False;190;Emission;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;191;-19.85785,539.4445;Inherit;False;188;HighLightColor;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleAddOpNode;195;350.0262,535.115;Inherit;False;4;4;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;196;558.2501,272.7746;Inherit;False;Property;_CullMode1;CullMode;19;1;[Enum];Create;True;0;0;1;UnityEngine.Rendering.CullMode;True;0;False;2;2;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;110;287.8197,719.8191;Inherit;False;109;OutLine;1;0;OBJECT;;False;1;FLOAT3;0
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;1;505.6253,361.338;Float;False;True;-1;6;ASEMaterialInspector;0;0;CustomLighting;ASE/Base/OutLine;False;False;False;False;True;True;True;False;True;False;False;True;False;False;False;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Opaque;0.5;True;True;0;False;Opaque;;Geometry;ForwardOnly;18;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;True;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;0.44;0,0,0,0;VertexOffset;True;False;Cylindrical;False;True;Relative;0;;-1;-1;-1;-1;0;False;0;0;True;196;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
WireConnection;153;20;150;0
WireConnection;153;17;151;0
WireConnection;154;0;152;0
WireConnection;154;1;153;21
WireConnection;157;0;154;0
WireConnection;171;38;159;0
WireConnection;171;35;163;0
WireConnection;171;36;162;0
WireConnection;171;37;160;0
WireConnection;177;39;158;0
WireConnection;177;32;161;1
WireConnection;177;34;161;2
WireConnection;177;35;161;3
WireConnection;177;36;161;4
WireConnection;181;0;174;0
WireConnection;182;0;177;0
WireConnection;183;0;171;0
WireConnection;192;0;186;0
WireConnection;192;1;185;0
WireConnection;192;2;187;0
WireConnection;202;0;133;0
WireConnection;198;0;192;0
WireConnection;156;0;153;21
WireConnection;156;1;155;0
WireConnection;165;0;153;21
WireConnection;164;0;156;0
WireConnection;33;0;203;0
WireConnection;33;1;132;0
WireConnection;201;0;35;0
WireConnection;199;0;33;0
WireConnection;199;1;205;0
WireConnection;184;0;167;0
WireConnection;184;1;172;0
WireConnection;180;31;175;0
WireConnection;180;14;173;0
WireConnection;180;16;166;0
WireConnection;180;30;169;0
WireConnection;179;16;168;0
WireConnection;179;13;176;0
WireConnection;179;14;170;0
WireConnection;179;15;178;0
WireConnection;32;0;199;0
WireConnection;32;1;204;0
WireConnection;189;0;180;0
WireConnection;188;0;179;0
WireConnection;190;0;184;0
WireConnection;109;0;32;0
WireConnection;195;0;192;0
WireConnection;195;1;191;0
WireConnection;195;2;194;0
WireConnection;195;3;193;0
WireConnection;1;13;195;0
WireConnection;1;11;110;0
ASEEND*/
//CHKSM=ECCBA53C4D546B3583EBA031726A5834B997716F