|
|
- // Made with Amplify Shader Editor
- // Available at the Unity Asset Store - http://u3d.as/y3X
- Shader "ASESampleShaders/CustomOutlineToon"
- {
- Properties
- {
- [NoScaleOffset]_BaseColorRGBOutlineWidthA("Base Color (RGB) Outline Width (A)", 2D) = "gray" {}
- _BaseTint("Base Tint", Color) = (1,1,1,0)
- _BaseCellSharpness("Base Cell Sharpness", Range( 0.01 , 1)) = 0.01
- _BaseCellOffset("Base Cell Offset", Range( -1 , 1)) = 0
- _IndirectDiffuseContribution("Indirect Diffuse Contribution", Range( 0 , 1)) = 1
- _ShadowContribution("Shadow Contribution", Range( 0 , 1)) = 0.5
- [NoScaleOffset]_Highlight("Highlight", 2D) = "white" {}
- [HDR]_HighlightTint("Highlight Tint", Color) = (1,1,1,1)
- _HighlightCellOffset("Highlight Cell Offset", Range( -1 , -0.5)) = -0.95
- _HighlightCellSharpness("Highlight Cell Sharpness", Range( 0.001 , 1)) = 0.01
- _IndirectSpecularContribution("Indirect Specular Contribution", Range( 0 , 1)) = 1
- [Toggle] _StaticHighLights("Static HighLights", Float) = 0.0
- [Normal][NoScaleOffset]_NormalMap("Normal Map", 2D) = "bump" {}
- _NormalScale("Normal Scale", Range( 0 , 1)) = 1
- [HDR]_RimColor("Rim Color", Color) = (1,1,1,0)
- _RimPower("Rim Power", Range( 0.01 , 1)) = 0.4
- _RimOffset("Rim Offset", Range( 0 , 1)) = 0.6
- _OutlineTint("Outline Tint", Color) = (0.5294118,0.5294118,0.5294118,0)
- _OutlineWidth("Outline Width", Range( 0.02 , 0.2)) = 0.02
- _TessValue( "Max Tessellation", Range( 1, 32 ) ) = 4
- _TessMin( "Tess Min Distance", Float ) = 10
- _TessMax( "Tess Max Distance", Float ) = 25
- _TessPhongStrength( "Phong Tess Strength", Range( 0, 1 ) ) = 0.5
- [HideInInspector] _texcoord( "", 2D ) = "white" {}
- [HideInInspector] __dirty( "", Int ) = 1
- }
-
- SubShader
- {
- Tags{ }
- Cull Front
- CGPROGRAM
- #include "Tessellation.cginc"
- #pragma target 4.6
- #pragma surface outlineSurf Outline nofog keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nometa noforwardadd vertex:outlineVertexDataFunc tessellate:tessFunction tessphong:_TessPhongStrength
-
- void outlineVertexDataFunc( inout appdata_full v )
- {
- float2 uv_BaseColorRGBOutlineWidthA = v.texcoord;
- float4 tex2DNode76 = tex2Dlod( _BaseColorRGBOutlineWidthA, float4( uv_BaseColorRGBOutlineWidthA, 0, 0.0) );
- float OutlineCustomWidth257 = tex2DNode76.a;
- float outlineVar = ( _OutlineWidth * OutlineCustomWidth257 );
- v.vertex.xyz += ( v.normal * outlineVar );
- }
- inline fixed4 LightingOutline( SurfaceOutput s, half3 lightDir, half atten ) { return fixed4 ( 0,0,0, s.Alpha); }
- void outlineSurf( Input i, inout SurfaceOutput o )
- {
- float3 temp_cast_0 = (1.0).xxx;
- float3 lerpResult117 = lerp( temp_cast_0 , float3(0,0,0) , _IndirectDiffuseContribution);
- float temp_output_214_0 = ( 1.0 - ( ( 1.0 - 1 ) * _WorldSpaceLightPos0.w ) );
- float2 uv_NormalMap = i.uv_texcoord;
- float3 normalizeResult170 = normalize( WorldNormalVector( i , UnpackScaleNormal( tex2D( _NormalMap, uv_NormalMap ) ,_NormalScale ) ) );
- float3 NewNormals220 = normalizeResult170;
- float3 ase_worldPos = i.worldPos;
- float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
- float dotResult54 = dot( NewNormals220 , ase_worldlightDir );
- float NdotL236 = dotResult54;
- float lerpResult159 = lerp( temp_output_214_0 , ( saturate( ( ( NdotL236 + _BaseCellOffset ) / _BaseCellSharpness ) ) * 1 ) , _ShadowContribution);
- float2 uv_BaseColorRGBOutlineWidthA = i.uv_texcoord;
- float4 tex2DNode76 = tex2D( _BaseColorRGBOutlineWidthA, uv_BaseColorRGBOutlineWidthA );
- float3 BaseColor253 = ( ( ( lerpResult117 * _LightColor0.a * temp_output_214_0 ) + ( _LightColor0.rgb * lerpResult159 ) ) * (( tex2DNode76 * _BaseTint )).rgb );
- o.Emission = ( BaseColor253 * (_OutlineTint).rgb );
- o.Normal = float3(0,0,-1);
- }
- ENDCG
-
-
- Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
- Cull Back
- CGINCLUDE
- #include "UnityPBSLighting.cginc"
- #include "UnityShaderVariables.cginc"
- #include "UnityStandardUtils.cginc"
- #include "UnityCG.cginc"
- #include "Tessellation.cginc"
- #include "Lighting.cginc"
- #pragma target 4.6
- #pragma shader_feature _STATICHIGHLIGHTS_ON
- #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) fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal), dot(data.internalSurfaceTtoW2,normal))
- #endif
- struct Input
- {
- float3 worldNormal;
- INTERNAL_DATA
- float2 uv_texcoord;
- float3 worldPos;
- };
-
- struct SurfaceOutputCustomLightingCustom
- {
- fixed3 Albedo;
- fixed3 Normal;
- half3 Emission;
- half Metallic;
- half Smoothness;
- half Occlusion;
- fixed Alpha;
- Input SurfInput;
- UnityGIInput GIData;
- };
-
- uniform float _IndirectDiffuseContribution;
- uniform float _NormalScale;
- uniform sampler2D _NormalMap;
- uniform float _BaseCellOffset;
- uniform float _BaseCellSharpness;
- uniform float _ShadowContribution;
- uniform sampler2D _BaseColorRGBOutlineWidthA;
- uniform float4 _BaseTint;
- uniform float4 _HighlightTint;
- uniform sampler2D _Highlight;
- uniform float _IndirectSpecularContribution;
- uniform float _HighlightCellOffset;
- uniform float _HighlightCellSharpness;
- uniform float _RimOffset;
- uniform float _RimPower;
- uniform float4 _RimColor;
- uniform float _TessValue;
- uniform float _TessMin;
- uniform float _TessMax;
- uniform float _TessPhongStrength;
- uniform float _OutlineWidth;
- uniform float4 _OutlineTint;
-
- float4 tessFunction( appdata_full v0, appdata_full v1, appdata_full v2 )
- {
- return UnityDistanceBasedTess( v0.vertex, v1.vertex, v2.vertex, _TessMin, _TessMax, _TessValue );
- }
-
- void vertexDataFunc( inout appdata_full v )
- {
- v.vertex.xyz += 0;
- }
-
- inline half4 LightingStandardCustomLighting( inout SurfaceOutputCustomLightingCustom s, half3 viewDir, UnityGI gi )
- {
- UnityGIInput data = s.GIData;
- Input i = s.SurfInput;
- half4 c = 0;
- #if DIRECTIONAL
- 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
- float3 temp_cast_1 = (1.0).xxx;
- float2 uv_NormalMap = i.uv_texcoord;
- float3 normalizeResult170 = normalize( WorldNormalVector( i , UnpackScaleNormal( tex2D( _NormalMap, uv_NormalMap ) ,_NormalScale ) ) );
- float3 NewNormals220 = normalizeResult170;
- float3 indirectNormal106 = NewNormals220;
- float2 uv_Highlight = i.uv_texcoord;
- float4 temp_output_184_0 = ( _HighlightTint * tex2D( _Highlight, uv_Highlight ) );
- float temp_output_189_0 = (temp_output_184_0).a;
- Unity_GlossyEnvironmentData g106 = UnityGlossyEnvironmentSetup( temp_output_189_0, data.worldViewDir, indirectNormal106, float3(0,0,0));
- float3 indirectSpecular106 = UnityGI_IndirectSpecular( data, 1.0, indirectNormal106, g106 );
- float3 lerpResult187 = lerp( temp_cast_1 , indirectSpecular106 , _IndirectSpecularContribution);
- float3 HighlightColor249 = (temp_output_184_0).rgb;
- float3 LightColorFalloff227 = ( _LightColor0.rgb * ase_lightAtten );
- float3 ase_worldPos = i.worldPos;
- float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
- float dotResult54 = dot( NewNormals220 , ase_worldlightDir );
- float NdotL236 = dotResult54;
- float3 ase_worldViewDir = normalize( UnityWorldSpaceViewDir( ase_worldPos ) );
- float3 normalizeResult4_g3 = normalize( ( ase_worldViewDir + ase_worldlightDir ) );
- float dotResult62 = dot( normalizeResult4_g3 , NewNormals220 );
- #ifdef _STATICHIGHLIGHTS_ON
- float staticSwitch195 = NdotL236;
- #else
- float staticSwitch195 = dotResult62;
- #endif
- float3 temp_cast_2 = (1.0).xxx;
- UnityGI gi115 = gi;
- float3 diffNorm115 = NewNormals220;
- gi115 = UnityGI_Base( data, 1, diffNorm115 );
- float3 indirectDiffuse115 = gi115.indirect.diffuse + diffNorm115 * 0.0001;
- float3 lerpResult117 = lerp( temp_cast_2 , indirectDiffuse115 , _IndirectDiffuseContribution);
- float temp_output_214_0 = ( 1.0 - ( ( 1.0 - ase_lightAtten ) * _WorldSpaceLightPos0.w ) );
- float lerpResult159 = lerp( temp_output_214_0 , ( saturate( ( ( NdotL236 + _BaseCellOffset ) / _BaseCellSharpness ) ) * ase_lightAtten ) , _ShadowContribution);
- float2 uv_BaseColorRGBOutlineWidthA = i.uv_texcoord;
- float4 tex2DNode76 = tex2D( _BaseColorRGBOutlineWidthA, uv_BaseColorRGBOutlineWidthA );
- float3 BaseColor253 = ( ( ( lerpResult117 * _LightColor0.a * temp_output_214_0 ) + ( _LightColor0.rgb * lerpResult159 ) ) * (( tex2DNode76 * _BaseTint )).rgb );
- float dotResult88 = dot( NewNormals220 , ase_worldViewDir );
- c.rgb = ( ( lerpResult187 * HighlightColor249 * LightColorFalloff227 * pow( temp_output_189_0 , 1.5 ) * saturate( ( ( staticSwitch195 + _HighlightCellOffset ) / ( ( 1.0 - temp_output_189_0 ) * _HighlightCellSharpness ) ) ) ) + BaseColor253 + ( ( saturate( NdotL236 ) * pow( ( 1.0 - saturate( ( dotResult88 + _RimOffset ) ) ) , _RimPower ) ) * HighlightColor249 * LightColorFalloff227 * (_RimColor).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);
- float3 temp_cast_0 = (1.0).xxx;
- float3 lerpResult117 = lerp( temp_cast_0 , float3(0,0,0) , _IndirectDiffuseContribution);
- float temp_output_214_0 = ( 1.0 - ( ( 1.0 - 1 ) * _WorldSpaceLightPos0.w ) );
- float2 uv_NormalMap = i.uv_texcoord;
- float3 normalizeResult170 = normalize( WorldNormalVector( i , UnpackScaleNormal( tex2D( _NormalMap, uv_NormalMap ) ,_NormalScale ) ) );
- float3 NewNormals220 = normalizeResult170;
- float3 ase_worldPos = i.worldPos;
- float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
- float dotResult54 = dot( NewNormals220 , ase_worldlightDir );
- float NdotL236 = dotResult54;
- float lerpResult159 = lerp( temp_output_214_0 , ( saturate( ( ( NdotL236 + _BaseCellOffset ) / _BaseCellSharpness ) ) * 1 ) , _ShadowContribution);
- float2 uv_BaseColorRGBOutlineWidthA = i.uv_texcoord;
- float4 tex2DNode76 = tex2D( _BaseColorRGBOutlineWidthA, uv_BaseColorRGBOutlineWidthA );
- float3 BaseColor253 = ( ( ( lerpResult117 * _LightColor0.a * temp_output_214_0 ) + ( _LightColor0.rgb * lerpResult159 ) ) * (( tex2DNode76 * _BaseTint )).rgb );
- o.Albedo = BaseColor253;
- }
-
- ENDCG
- CGPROGRAM
- #pragma surface surf StandardCustomLighting keepalpha fullforwardshadows vertex:vertexDataFunc tessellate:tessFunction tessphong:_TessPhongStrength
-
- 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_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
- };
- v2f vert( appdata_full v )
- {
- v2f o;
- UNITY_SETUP_INSTANCE_ID( v );
- UNITY_INITIALIZE_OUTPUT( v2f, o );
- UNITY_TRANSFER_INSTANCE_ID( v, o );
- Input customInputData;
- vertexDataFunc( v );
- float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
- fixed3 worldNormal = UnityObjectToWorldNormal( v.normal );
- fixed3 worldTangent = UnityObjectToWorldDir( v.tangent.xyz );
- fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;
- fixed3 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;
- }
- fixed4 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 );
- fixed3 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=14103
- 487;595;979;423;3286.227;2676.877;11.52267;True;False
- Node;AmplifyShaderEditor.CommentaryNode;226;-803.833,-214.5792;Float;False;1370.182;280;Comment;5;82;52;170;220;109;Normals;0.5220588,0.6044625,1,1;0;0
- Node;AmplifyShaderEditor.RangedFloatNode;109;-753.8331,-138.0697;Float;False;Property;_NormalScale;Normal Scale;13;0;Create;1;0;0;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SamplerNode;82;-422.226,-164.5792;Float;True;Property;_NormalMap;Normal Map;12;2;[Normal];[NoScaleOffset];Create;None;None;True;0;True;bump;Auto;True;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.WorldNormalVector;52;-103.4431,-159.3391;Float;False;1;0;FLOAT3;0,0,0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
- Node;AmplifyShaderEditor.NormalizeNode;170;138.1924,-160.2827;Float;False;1;0;FLOAT3;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.CommentaryNode;241;-676.3679,366.5508;Float;False;835.6508;341.2334;Comment;4;53;223;54;236;N dot L;1,1,1,1;0;0
- Node;AmplifyShaderEditor.GetLocalVarNode;223;-599.3095,416.5508;Float;False;220;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;220;323.3487,-158.8317;Float;False;NewNormals;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;53;-626.368,528.7842;Float;False;1;0;FLOAT;0.0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
- Node;AmplifyShaderEditor.CommentaryNode;242;1324.039,459.9366;Float;False;2744.931;803.0454;Comment;25;253;158;130;235;73;182;76;133;107;159;162;160;214;74;213;215;207;57;60;58;127;59;237;256;257;Base Color;1,1,1,1;0;0
- Node;AmplifyShaderEditor.DotProductOpNode;54;-302.0764,453.3497;Float;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0.0,0,0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;59;1374.039,641.3355;Float;False;Property;_BaseCellOffset;Base Cell Offset;3;0;Create;0;0;-1;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.GetLocalVarNode;237;1374.247,533.2394;Float;False;236;0;1;FLOAT;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;236;-83.71747,456.6653;Float;False;NdotL;-1;True;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;60;1676.114,631.0218;Float;False;Property;_BaseCellSharpness;Base Cell Sharpness;2;0;Create;0.01;0;0.01;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.LightAttenuation;127;1631.055,790.9418;Float;False;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleAddOpNode;58;1657.487,534.5102;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleDivideOpNode;57;1956.552,537.3538;Float;False;2;0;FLOAT;0.0;False;1;FLOAT;0.01;False;1;FLOAT;0
- Node;AmplifyShaderEditor.OneMinusNode;215;1944.082,816.0775;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.CommentaryNode;251;648.5698,-1229.416;Float;False;2234.221;738.9581;Comment;18;184;180;249;246;181;177;81;172;175;61;222;239;62;195;174;173;171;261;;1,1,1,1;0;0
- Node;AmplifyShaderEditor.CommentaryNode;233;1355.396,-187.3015;Float;False;828.4254;361.0605;Comment;5;115;118;117;119;225;Indirect Diffuse;1,1,1,1;0;0
- Node;AmplifyShaderEditor.WorldSpaceLightPos;207;1626.013,899.7625;Float;False;0;3;FLOAT4;0;FLOAT3;1;FLOAT;2
- Node;AmplifyShaderEditor.CommentaryNode;243;1727.822,1561.833;Float;False;1926.522;520.1537;Comment;17;98;244;231;193;96;250;94;103;93;92;238;91;90;88;89;221;86;Rim Color;1,1,1,1;0;0
- Node;AmplifyShaderEditor.GetLocalVarNode;221;1777.822,1662.402;Float;False;220;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.SamplerNode;81;1260.552,-1012.602;Float;True;Property;_Highlight;Highlight;6;1;[NoScaleOffset];Create;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.ColorNode;177;1329.485,-1179.416;Float;False;Property;_HighlightTint;Highlight Tint;7;1;[HDR];Create;1,1,1,1;0,0,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.ViewDirInputsCoordNode;86;1824.853,1773.611;Float;False;World;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;213;2134.626,851.7131;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SaturateNode;74;2114.005,542.3831;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.GetLocalVarNode;225;1405.396,-42.92128;Float;False;220;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.RangedFloatNode;119;1785.008,-137.3016;Float;False;Constant;_Float4;Float 4;20;0;Create;1;0;0;0;0;1;FLOAT;0
- Node;AmplifyShaderEditor.DotProductOpNode;88;2129.955,1708.719;Float;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.FunctionNode;61;698.5698,-733.562;Float;False;Blinn-Phong Half Vector;-1;;3;91a149ac9d615be429126c95e20753ce;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.OneMinusNode;214;2324.502,854.6982;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.CommentaryNode;248;1892.391,-1558.685;Float;False;287;165;Comment;1;189;Spec/Smooth;1,1,1,1;0;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;184;1659.207,-1057.273;Float;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0.0,0,0,0;False;1;COLOR;0
- Node;AmplifyShaderEditor.IndirectDiffuseLighting;115;1688.455,-41.32622;Float;False;World;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.RangedFloatNode;89;2072.556,1825.936;Float;False;Property;_RimOffset;Rim Offset;16;0;Create;0.6;0;0;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;118;1659.391,58.75889;Float;False;Property;_IndirectDiffuseContribution;Indirect Diffuse Contribution;4;0;Create;1;0;0;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.GetLocalVarNode;222;762.1332,-605.4583;Float;False;220;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;160;2351.156,541.2684;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;162;2155.415,983.4974;Float;False;Property;_ShadowContribution;Shadow Contribution;5;0;Create;0.5;0;0;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.DotProductOpNode;62;1043.79,-679.1187;Float;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.LerpOp;117;1999.821,-60.9863;Float;False;3;0;FLOAT3;0,0,0;False;1;FLOAT3;0;False;2;FLOAT;0.0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.ComponentMaskNode;189;1942.391,-1508.685;Float;False;False;False;False;True;1;0;COLOR;0,0,0,0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.LightColorNode;107;2626.905,541.7966;Float;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
- Node;AmplifyShaderEditor.GetLocalVarNode;239;1003.499,-845.3307;Float;False;236;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SamplerNode;76;2937.31,875.5428;Float;True;Property;_BaseColorRGBOutlineWidthA;Base Color (RGB) Outline Width (A);0;1;[NoScaleOffset];Create;None;None;True;0;False;gray;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0.0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1.0;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.LerpOp;159;2707.211,856.7739;Float;False;3;0;FLOAT;0.0;False;1;FLOAT;0.0;False;2;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleAddOpNode;90;2353.555,1712.936;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.ColorNode;73;2975.755,1079.272;Float;False;Property;_BaseTint;Base Tint;1;0;Create;1,1,1,0;0,0,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.StaticSwitch;195;1271.122,-784.4333;Float;False;Property;_StaticHighLights;Static HighLights;11;0;Create;0;False;False;True;;Toggle;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.CommentaryNode;240;-635.8909,943.4141;Float;False;717.6841;295.7439;Comment;4;229;228;230;227;Light Falloff;0.9947262,1,0.6176471,1;0;0
- Node;AmplifyShaderEditor.OneMinusNode;261;2021.558,-885.707;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;173;1405.781,-660.3005;Float;False;Property;_HighlightCellOffset;Highlight Cell Offset;8;0;Create;-0.95;0;-1;-0.5;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;133;3050.939,734.3177;Float;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0.0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;256;3276.777,970.2915;Float;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0.0,0,0,0;False;1;COLOR;0
- Node;AmplifyShaderEditor.SaturateNode;91;2513.555,1712.936;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;174;1799.042,-648.0834;Float;False;Property;_HighlightCellSharpness;Highlight Cell Sharpness;9;0;Create;0.01;0;0.001;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;182;3048.637,509.9366;Float;False;3;3;0;FLOAT3;0,0,0;False;1;FLOAT;0.0,0,0;False;2;FLOAT;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.CommentaryNode;247;1687.587,-2100.743;Float;False;1008.755;365.3326;Comment;5;224;106;188;186;187;Indirect Specular;1,1,1,1;0;0
- Node;AmplifyShaderEditor.CommentaryNode;219;3993.704,1541.79;Float;False;1039.617;429.9737;Comment;8;259;200;258;83;185;245;254;192;Custom Outline;1,0.6029412,0.7097364,1;0;0
- Node;AmplifyShaderEditor.GetLocalVarNode;238;2644.923,1611.833;Float;False;236;0;1;FLOAT;0
- Node;AmplifyShaderEditor.OneMinusNode;93;2689.555,1712.936;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.LightAttenuation;229;-585.8909,1129.158;Float;False;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleAddOpNode;130;3307.784,623.0619;Float;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.GetLocalVarNode;224;1737.587,-1980.103;Float;False;220;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleAddOpNode;171;1760.558,-788.2134;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.LightColorNode;228;-540.1871,993.4141;Float;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;260;2116.472,-654.7482;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;92;2577.555,1840.936;Float;False;Property;_RimPower;Rim Power;15;0;Create;0.4;0;0.01;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.ComponentMaskNode;235;3423.945,954.0895;Float;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.RangedFloatNode;188;2094.48,-1850.412;Float;False;Property;_IndirectSpecularContribution;Indirect Specular Contribution;10;0;Create;1;0;0;1;0;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleDivideOpNode;172;2108.795,-795.9062;Float;False;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.ColorNode;192;4054.217,1683.832;Float;False;Property;_OutlineTint;Outline Tint;17;0;Create;0.5294118,0.5294118,0.5294118,0;0,0,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.ComponentMaskNode;180;1898.907,-1053.456;Float;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;158;3608.84,749.2598;Float;False;2;2;0;FLOAT3;0,0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SaturateNode;103;2870.778,1633.693;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;230;-351.8918,1059.575;Float;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0.0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.IndirectSpecularLight;106;2161.653,-1963.519;Float;False;World;3;0;FLOAT3;0,0,0;False;1;FLOAT;0.5;False;2;FLOAT;1.0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.RangedFloatNode;186;2188.282,-2050.743;Float;False;Constant;_Float5;Float 5;20;0;Create;1;0;0;0;0;1;FLOAT;0
- Node;AmplifyShaderEditor.ColorNode;98;2890.947,1874.34;Float;False;Property;_RimColor;Rim Color;14;1;[HDR];Create;1,1,1,0;0,0,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
- Node;AmplifyShaderEditor.PowerNode;94;2881.555,1712.936;Float;False;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;249;2211.476,-1055.947;Float;False;HighlightColor;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;227;-177.207,1056.042;Float;False;LightColorFalloff;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.GetLocalVarNode;254;4306.977,1596.032;Float;False;253;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;96;3165.683,1641.71;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.ComponentMaskNode;244;3154.779,1926.118;Float;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SaturateNode;175;2324.68,-792.1935;Float;False;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;257;3389.934,1086.04;Float;False;OutlineCustomWidth;-1;True;1;0;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.RangedFloatNode;200;4326.404,1785.057;Float;False;Property;_OutlineWidth;Outline Width;18;0;Create;0.02;0;0.02;0.2;0;1;FLOAT;0
- Node;AmplifyShaderEditor.GetLocalVarNode;250;3159.324,1739.908;Float;False;249;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.ComponentMaskNode;245;4357.897,1686.073;Float;False;True;True;True;False;1;0;COLOR;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.RegisterLocalVarNode;253;3801.573,744.8395;Float;False;BaseColor;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.GetLocalVarNode;231;3153.879,1829.875;Float;False;227;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.GetLocalVarNode;259;4345.463,1881.319;Float;False;257;0;1;FLOAT;0
- Node;AmplifyShaderEditor.GetLocalVarNode;246;2204.838,-950.8322;Float;False;227;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.LerpOp;187;2512.345,-1997.898;Float;False;3;0;FLOAT3;0,0,0;False;1;FLOAT3;0;False;2;FLOAT;0.0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.PowerNode;263;2277.378,-1363.768;Float;False;2;0;FLOAT;0.0;False;1;FLOAT;1.5;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;185;4617.75,1638.073;Float;False;2;2;0;FLOAT3;0,0,0,0;False;1;FLOAT3;0.3382353,0.3382353,0.3382353,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;258;4668.784,1790.126;Float;False;2;2;0;FLOAT;0.0;False;1;FLOAT;0.0;False;1;FLOAT;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;181;2713.791,-1059.016;Float;False;5;5;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0,0,0;False;4;FLOAT;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleMultiplyOpNode;193;3470.637,1634.762;Float;False;4;4;0;FLOAT;0,0,0;False;1;FLOAT3;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.GetLocalVarNode;252;4984.134,546.408;Float;False;253;0;1;FLOAT3;0
- Node;AmplifyShaderEditor.SimpleAddOpNode;163;4527.494,743.6974;Float;False;3;3;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0,0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.OutlineNode;83;4783.315,1639.851;Float;False;0;True;2;0;FLOAT3;0,0,0;False;1;FLOAT;0.0;False;1;FLOAT3;0
- Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;5309.991,551.4377;Float;False;True;6;Float;ASEMaterialInspector;0;0;CustomLighting;ASESampleShaders/CustomOutlineToon;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;0;False;0;0;Opaque;0.5;True;True;0;False;Opaque;Geometry;All;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;False;0;255;255;0;0;0;0;0;0;0;0;True;0;4;10;25;True;0.5;True;0;Zero;Zero;0;Zero;Zero;OFF;OFF;0;False;0.03;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;-1;-1;-1;19;0;0;0;False;0;0;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0.0,0,0;False;4;FLOAT;0.0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0.0;False;9;FLOAT;0.0;False;10;FLOAT;0.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;82;5;109;0
- WireConnection;52;0;82;0
- WireConnection;170;0;52;0
- WireConnection;220;0;170;0
- WireConnection;54;0;223;0
- WireConnection;54;1;53;0
- WireConnection;236;0;54;0
- WireConnection;58;0;237;0
- WireConnection;58;1;59;0
- WireConnection;57;0;58;0
- WireConnection;57;1;60;0
- WireConnection;215;0;127;0
- WireConnection;213;0;215;0
- WireConnection;213;1;207;2
- WireConnection;74;0;57;0
- WireConnection;88;0;221;0
- WireConnection;88;1;86;0
- WireConnection;214;0;213;0
- WireConnection;184;0;177;0
- WireConnection;184;1;81;0
- WireConnection;115;0;225;0
- WireConnection;160;0;74;0
- WireConnection;160;1;127;0
- WireConnection;62;0;61;0
- WireConnection;62;1;222;0
- WireConnection;117;0;119;0
- WireConnection;117;1;115;0
- WireConnection;117;2;118;0
- WireConnection;189;0;184;0
- WireConnection;159;0;214;0
- WireConnection;159;1;160;0
- WireConnection;159;2;162;0
- WireConnection;90;0;88;0
- WireConnection;90;1;89;0
- WireConnection;195;0;239;0
- WireConnection;195;1;62;0
- WireConnection;261;0;189;0
- WireConnection;133;0;107;1
- WireConnection;133;1;159;0
- WireConnection;256;0;76;0
- WireConnection;256;1;73;0
- WireConnection;91;0;90;0
- WireConnection;182;0;117;0
- WireConnection;182;1;107;2
- WireConnection;182;2;214;0
- WireConnection;93;0;91;0
- WireConnection;130;0;182;0
- WireConnection;130;1;133;0
- WireConnection;171;0;195;0
- WireConnection;171;1;173;0
- WireConnection;260;0;261;0
- WireConnection;260;1;174;0
- WireConnection;235;0;256;0
- WireConnection;172;0;171;0
- WireConnection;172;1;260;0
- WireConnection;180;0;184;0
- WireConnection;158;0;130;0
- WireConnection;158;1;235;0
- WireConnection;103;0;238;0
- WireConnection;230;0;228;1
- WireConnection;230;1;229;0
- WireConnection;106;0;224;0
- WireConnection;106;1;189;0
- WireConnection;94;0;93;0
- WireConnection;94;1;92;0
- WireConnection;249;0;180;0
- WireConnection;227;0;230;0
- WireConnection;96;0;103;0
- WireConnection;96;1;94;0
- WireConnection;244;0;98;0
- WireConnection;175;0;172;0
- WireConnection;257;0;76;4
- WireConnection;245;0;192;0
- WireConnection;253;0;158;0
- WireConnection;187;0;186;0
- WireConnection;187;1;106;0
- WireConnection;187;2;188;0
- WireConnection;263;0;189;0
- WireConnection;185;0;254;0
- WireConnection;185;1;245;0
- WireConnection;258;0;200;0
- WireConnection;258;1;259;0
- WireConnection;181;0;187;0
- WireConnection;181;1;249;0
- WireConnection;181;2;246;0
- WireConnection;181;3;263;0
- WireConnection;181;4;175;0
- WireConnection;193;0;96;0
- WireConnection;193;1;250;0
- WireConnection;193;2;231;0
- WireConnection;193;3;244;0
- WireConnection;163;0;181;0
- WireConnection;163;1;253;0
- WireConnection;163;2;193;0
- WireConnection;83;0;185;0
- WireConnection;83;1;258;0
- WireConnection;0;0;252;0
- WireConnection;0;13;163;0
- WireConnection;0;11;83;0
- ASEEND*/
- //CHKSM=95996635B7D0F42505782FCBECE8160B39C941CA
|