mergemilitary/Assets/Arts/shader/ASE_Base_OutLine.shader

402 lines
23 KiB
Plaintext

// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "ASE_Base_OutLine"
{
Properties
{
_Color("Color", Color) = (1,1,1,1)
_Texture("Texture", 2D) = "white" {}
_ShaowColorolor("ShaowColorolor", Color) = (0.5711552,0.6109352,0.8018868,1)
_Boundry("Boundry", Range( 0 , 1)) = 0.5
_Smooth("Smooth", Range( 0 , 1)) = 0.5
_HLColor("HLColor", Color) = (0,0,0,1)
_HLBoundry("HLBoundry", Range( 0 , 1)) = 0.2
_HLSmooth("HLSmooth", Range( 0 , 1)) = 0.2
[HDR]_FreColor("FreColor", Color) = (0,0,0,1)
_FreBoundry("FreBoundry", Range( 0 , 1)) = 0.3494399
_FreSmooth("FreSmooth", Range( 0 , 1)) = 0.4470588
_EmissionColor("EmissionColor", Color) = (0,0,0,0)
_EmissionTex("EmissionTex", 2D) = "white" {}
_OutLineColor("OutLine Color", Color) = (0.422491,0.383544,0.4811321,1)
_OutLineWidth("OutLine Width", Range( 0 , 0.15)) = 0.03
[Toggle]_OutLineType("OutLine Type", Float) = 0
_OutLineMAX("OutLine MAX", Float) = 1
[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 );
float3 ase_vertexNormal = v.normal.xyz;
float3 ase_vertex3Pos = v.vertex.xyz;
float4 unityObjectToClipPos42 = UnityObjectToClipPos( ase_vertex3Pos );
float3 outlineVar = ( _OutLineWidth * ase_vertexNormal * (( _OutLineType )?( min( unityObjectToClipPos42.w , _OutLineMAX ) ):( 1.0 )) );
v.vertex.xyz += outlineVar;
}
inline half4 LightingOutline( SurfaceOutput s, half3 lightDir, half atten ) { return half4 ( 0,0,0, s.Alpha); }
void outlineSurf( Input i, inout SurfaceOutput o )
{
float2 uv_Texture = i.uv_texcoord * _Texture_ST.xy + _Texture_ST.zw;
float temp_output_54_0 = (-1.0 + (_Boundry - 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
float3 ase_worldNormal = WorldNormalVector( i, float3( 0, 0, 1 ) );
float dotResult3 = dot( ase_worldlightDir , ase_worldNormal );
float smoothstepResult59 = smoothstep( ( temp_output_54_0 - _Smooth ) , ( temp_output_54_0 + _Smooth ) , dotResult3);
float4 lerpResult62 = lerp( _ShaowColorolor , float4( 1,1,1,0 ) , ( 1 * smoothstepResult59 ));
float temp_output_24_0 = (1.0 + (_HLBoundry - 0.0) * (0.0 - 1.0) / (1.0 - 0.0));
float smoothstepResult27 = smoothstep( ( temp_output_24_0 - _HLSmooth ) , ( temp_output_24_0 + _HLSmooth ) , dotResult3);
float4 lerpResult21 = lerp( float4( 0,0,0,0 ) , _HLColor , smoothstepResult27);
float2 uv_EmissionTex = i.uv_texcoord * _EmissionTex_ST.xy + _EmissionTex_ST.zw;
float4 temp_output_31_0 = ( ( tex2D( _Texture, uv_Texture ) * _Color * lerpResult62 ) + lerpResult21 + ( tex2D( _EmissionTex, uv_EmissionTex ) * _EmissionColor ) );
o.Emission = ( temp_output_31_0 * _OutLineColor ).rgb;
o.Normal = float3(0,0,-1);
}
ENDCG
Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
Cull Back
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 sampler2D _Texture;
uniform float4 _Texture_ST;
uniform float4 _Color;
uniform float4 _ShaowColorolor;
uniform float _Boundry;
uniform float _Smooth;
uniform float4 _HLColor;
uniform float _HLBoundry;
uniform float _HLSmooth;
uniform sampler2D _EmissionTex;
uniform float4 _EmissionTex_ST;
uniform float4 _EmissionColor;
uniform float _FreBoundry;
uniform float _FreSmooth;
uniform float4 _FreColor;
uniform float4 _OutLineColor;
uniform float _OutLineWidth;
uniform float _OutLineType;
uniform float _OutLineMAX;
void vertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
v.vertex.xyz += 0;
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_Texture = i.uv_texcoord * _Texture_ST.xy + _Texture_ST.zw;
float temp_output_54_0 = (-1.0 + (_Boundry - 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
float3 ase_worldNormal = i.worldNormal;
float dotResult3 = dot( ase_worldlightDir , ase_worldNormal );
float smoothstepResult59 = smoothstep( ( temp_output_54_0 - _Smooth ) , ( temp_output_54_0 + _Smooth ) , dotResult3);
float4 lerpResult62 = lerp( _ShaowColorolor , float4( 1,1,1,0 ) , ( ase_lightAtten * smoothstepResult59 ));
float temp_output_24_0 = (1.0 + (_HLBoundry - 0.0) * (0.0 - 1.0) / (1.0 - 0.0));
float smoothstepResult27 = smoothstep( ( temp_output_24_0 - _HLSmooth ) , ( temp_output_24_0 + _HLSmooth ) , dotResult3);
float4 lerpResult21 = lerp( float4( 0,0,0,0 ) , _HLColor , smoothstepResult27);
float2 uv_EmissionTex = i.uv_texcoord * _EmissionTex_ST.xy + _EmissionTex_ST.zw;
float4 temp_output_31_0 = ( ( tex2D( _Texture, uv_Texture ) * _Color * lerpResult62 ) + lerpResult21 + ( tex2D( _EmissionTex, uv_EmissionTex ) * _EmissionColor ) );
float temp_output_73_0 = ( 1.0 - (-0.2 + (_FreBoundry - 0.0) * (1.0 - -0.2) / (1.0 - 0.0)) );
float3 ase_worldViewDir = normalize( UnityWorldSpaceViewDir( ase_worldPos ) );
float fresnelNdotV77 = dot( ase_worldNormal, ase_worldViewDir );
float fresnelNode77 = ( 0.0 + 1.0 * pow( 1.0 - fresnelNdotV77, 1.0 ) );
float smoothstepResult79 = smoothstep( ( temp_output_73_0 - _FreSmooth ) , ( temp_output_73_0 + _FreSmooth ) , fresnelNode77);
c.rgb = ( temp_output_31_0 + ( smoothstepResult79 * _FreColor * _FreColor.a ) ).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;
}
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
0;23;1680;1006;4883.815;2916.303;4.435371;True;False
Node;AmplifyShaderEditor.CommentaryNode;52;-2382.884,-25.40955;Inherit;False;1307.155;489.8301;;10;62;61;60;59;58;57;56;55;54;53;暗面颜色;1,1,1,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;53;-2331.373,219.6745;Inherit;False;Property;_Boundry;Boundry;3;0;Create;True;0;0;0;False;0;False;0.5;0.59;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.TFHCRemapNode;54;-2029.063,224.2787;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.WorldSpaceLightDirHlpNode;4;-3127.512,153.6649;Inherit;False;False;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.WorldNormalVector;5;-3112.226,298.5156;Inherit;False;False;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.RangedFloatNode;55;-2335.097,362.8295;Inherit;False;Property;_Smooth;Smooth;4;0;Create;True;0;0;0;False;0;False;0.5;0.5;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;29;-2405.569,543.4531;Inherit;False;1357.935;485.3673;;8;22;24;25;26;23;28;21;27;高光颜色;1,1,1,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;25;-2367.857,731.3438;Inherit;False;Property;_HLBoundry;HLBoundry;6;0;Create;True;0;0;0;False;0;False;0.2;0.2;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleAddOpNode;57;-1807.369,351.2235;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.DotProductOpNode;3;-2849.644,243.4528;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleSubtractOpNode;56;-1818.369,224.2237;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.LightAttenuation;58;-1896.95,22.85854;Inherit;True;0;1;FLOAT;0
Node;AmplifyShaderEditor.TFHCRemapNode;24;-2069.54,741.1089;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;4;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SmoothstepOpNode;59;-1648.453,229.3747;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;68;-2401.357,-1190.784;Inherit;False;1371.999;687.4324;;12;80;79;78;77;76;75;74;73;72;71;70;69;菲涅尔;1,1,1,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;26;-2371.581,879.7299;Inherit;False;Property;_HLSmooth;HLSmooth;7;0;Create;True;0;0;0;False;0;False;0.2;0.6;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleSubtractOpNode;22;-1858.844,742.1176;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;60;-1373.204,25.41719;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;61;-1632.159,40.44416;Inherit;False;Property;_ShaowColorolor;ShaowColorolor;2;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.CommentaryNode;67;-752.7432,-1292.384;Inherit;False;972.2251;779.8464;;12;34;33;37;36;44;41;42;45;32;40;39;35;描边;1,1,1,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;66;-765.5999,566.0278;Inherit;False;503.5979;462.1639;;3;64;63;65;自发光;1,1,1,1;0;0
Node;AmplifyShaderEditor.SimpleAddOpNode;23;-1847.844,869.1172;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;69;-2227.292,-696.9128;Inherit;False;Constant;_Float2;Float 2;6;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;71;-2369.516,-848.5063;Inherit;False;Property;_FreBoundry;FreBoundry;9;0;Create;True;0;0;0;False;0;False;0.3494399;0.39;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;70;-2225.356,-772.6125;Inherit;False;Constant;_Float3;Float 3;6;0;Create;True;0;0;0;False;0;False;-0.2;-0.2;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.LerpOp;62;-1323.011,246.5976;Inherit;True;3;0;COLOR;0,0,0,0;False;1;COLOR;1,1,1,0;False;2;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.ColorNode;28;-1618.597,618.7781;Inherit;False;Property;_HLColor;HLColor;5;0;Create;True;0;0;0;False;0;False;0,0,0,1;0,0,0,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ColorNode;63;-660.303,839.1178;Inherit;False;Property;_EmissionColor;EmissionColor;11;0;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.SamplerNode;18;-1403.424,-436.5328;Inherit;True;Property;_Texture;Texture;1;0;Create;True;0;0;0;False;0;False;-1;None;5fbec0f866d46b24bb9dfdfe5a4c4095;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.PosVertexDataNode;41;-705.8356,-794.6159;Inherit;False;0;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SamplerNode;65;-728.851,636.0635;Inherit;True;Property;_EmissionTex;EmissionTex;12;0;Create;True;0;0;0;False;0;False;-1;None;20580bec95eb2ae4388407659cb2739f;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.SmoothstepOpNode;27;-1627.407,792.4022;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;19;-1357.128,-225.96;Inherit;False;Property;_Color;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.TFHCRemapNode;72;-2053.236,-822.7725;Inherit;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;0;False;4;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.UnityObjToClipPosHlpNode;42;-529.4498,-796.4008;Inherit;False;1;0;FLOAT3;0,0,0;False;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;17;-768.0537,145.4096;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.OneMinusNode;73;-1863.05,-815.4244;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;74;-2348.977,-604.5037;Inherit;False;Property;_FreSmooth;FreSmooth;10;0;Create;True;0;0;0;False;0;False;0.4470588;0.37;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;64;-406.8644,639.7534;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.LerpOp;21;-1312.717,792.11;Inherit;True;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;44;-522.3724,-616.4107;Inherit;False;Property;_OutLineMAX;OutLine MAX;16;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;34;-462.3834,-1223.68;Inherit;False;Property;_OutLineColor;OutLine Color;13;0;Create;True;0;0;0;False;0;False;0.422491,0.383544,0.4811321,1;0.6459594,0.5986117,0.7169812,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMinOpNode;45;-306.6093,-704.3681;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleAddOpNode;31;-563.4424,145.3145;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleAddOpNode;76;-1674.11,-627.4855;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleSubtractOpNode;75;-1709.005,-821.4612;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.FresnelNode;77;-2060.957,-1128.914;Inherit;True;Standard;WorldNormal;ViewDir;False;False;5;0;FLOAT3;0,0,1;False;4;FLOAT3;0,0,0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;78;-1515.883,-879.9984;Inherit;False;Property;_FreColor;FreColor;8;1;[HDR];Create;True;0;0;0;False;0;False;0,0,0,1;0,0,0,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SmoothstepOpNode;79;-1520.515,-1122.577;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0.24;False;2;FLOAT;0.87;False;1;FLOAT;0
Node;AmplifyShaderEditor.NormalVertexDataNode;37;-408.8006,-963.9197;Inherit;False;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ToggleSwitchNode;39;-169.0237,-735.188;Inherit;False;Property;_OutLineType;OutLine Type;15;0;Create;True;0;0;0;False;0;False;0;True;2;0;FLOAT;1;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;35;-494.9503,-1047.597;Inherit;False;Property;_OutLineWidth;OutLine Width;14;0;Create;True;0;0;0;False;0;False;0.03;0;0;0.15;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;33;-222.7305,-1197.287;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;36;-122.4164,-881.4434;Inherit;False;3;3;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;2;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.WireNode;40;-38.86191,-1131.725;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;80;-1257.751,-1123.044;Inherit;True;3;3;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.OutlineNode;32;21.40653,-891.9302;Inherit;False;2;True;None;0;0;Front;True;True;True;True;0;False;-1;3;0;FLOAT3;0,0,0;False;2;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.SimpleAddOpNode;81;-334.992,143.1314;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;1;336.4745,-96.85273;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;False;-1;-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;54;0;53;0
WireConnection;57;0;54;0
WireConnection;57;1;55;0
WireConnection;3;0;4;0
WireConnection;3;1;5;0
WireConnection;56;0;54;0
WireConnection;56;1;55;0
WireConnection;24;0;25;0
WireConnection;59;0;3;0
WireConnection;59;1;56;0
WireConnection;59;2;57;0
WireConnection;22;0;24;0
WireConnection;22;1;26;0
WireConnection;60;0;58;0
WireConnection;60;1;59;0
WireConnection;23;0;24;0
WireConnection;23;1;26;0
WireConnection;62;0;61;0
WireConnection;62;2;60;0
WireConnection;27;0;3;0
WireConnection;27;1;22;0
WireConnection;27;2;23;0
WireConnection;72;0;71;0
WireConnection;72;3;70;0
WireConnection;72;4;69;0
WireConnection;42;0;41;0
WireConnection;17;0;18;0
WireConnection;17;1;19;0
WireConnection;17;2;62;0
WireConnection;73;0;72;0
WireConnection;64;0;65;0
WireConnection;64;1;63;0
WireConnection;21;1;28;0
WireConnection;21;2;27;0
WireConnection;45;0;42;4
WireConnection;45;1;44;0
WireConnection;31;0;17;0
WireConnection;31;1;21;0
WireConnection;31;2;64;0
WireConnection;76;0;73;0
WireConnection;76;1;74;0
WireConnection;75;0;73;0
WireConnection;75;1;74;0
WireConnection;79;0;77;0
WireConnection;79;1;75;0
WireConnection;79;2;76;0
WireConnection;39;1;45;0
WireConnection;33;0;31;0
WireConnection;33;1;34;0
WireConnection;36;0;35;0
WireConnection;36;1;37;0
WireConnection;36;2;39;0
WireConnection;40;0;33;0
WireConnection;80;0;79;0
WireConnection;80;1;78;0
WireConnection;80;2;78;4
WireConnection;32;0;40;0
WireConnection;32;1;36;0
WireConnection;81;0;31;0
WireConnection;81;1;80;0
WireConnection;1;13;81;0
WireConnection;1;11;32;0
ASEEND*/
//CHKSM=3BC162495A12EE4B3F40C897BA19479F149B49E8