Files
CartoonFPS/Assets/POLY - Military Shooting Range/Shaders/Foliage.shader

688 lines
44 KiB
Plaintext
Raw Normal View History

2025-08-05 09:30:40 +01:00
// Made with Amplify Shader Editor
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "Animpic/Foliage"
{
Properties
{
[SingleLineTexture][Header(Maps)][Space(7)]_Texture00("Texture", 2D) = "white" {}
[SingleLineTexture]_SmoothnessTexture3("Smoothness", 2D) = "white" {}
[SingleLineTexture]_SnowMask("Snow Mask", 2D) = "white" {}
_Tiling("Tiling", Float) = 1
_SnowTiling("Snow Tiling", Float) = 1
[Header(Settings)][Space(5)]_Color1("Main Color", Color) = (1,1,1,0)
_AlphaCutoff("Alpha Cutoff", Range( 0 , 1)) = 0.35
_Smoothness("Smoothness", Range( 0 , 1)) = 0
[Header(Second Color Settings)][Space(5)][Toggle(_COLOR2ENABLE_ON)] _Color2Enable("Enable", Float) = 0
_Color2("Second Color", Color) = (0,0,0,0)
[KeywordEnum(Vertex_Position_Based,UV_Based)] _Color2OverlayType("Overlay Method", Float) = 0
_Color2Level("Level", Float) = 0
_Color2Fade("Fade", Range( -1 , 1)) = 0.5
[Header(Show Settings)][Space(5)][Toggle(_SNOW_ON)] _SNOW("Enable", Float) = 0
[KeywordEnum(World_Normal_Based,UV_Based)] _SnowOverlayType("Overlay Method", Float) = 0
_SnowAmount("Amount", Range( 0 , 1)) = 0.5
_SnowFade("Fade", Range( 0 , 1)) = 0.3
[Header(Wind Settings)][Space(5)][Toggle(_WIND_ON)] _WIND("Enable", Float) = 1
_WindForce("Force", Range( 0 , 1)) = 0.3
_WindWavesScale("Waves Scale", Range( 0 , 1)) = 0.25
_WindSpeed("Speed", Range( 0 , 1)) = 0.5
[Toggle(_FIXTHEBASEOFFOLIAGE_ON)] _Fixthebaseoffoliage("Anchor the foliage base", Float) = 0
[Header(Lighting Settings)][Space(5)]_DirectLightOffset("Direct Light Offset", Range( 0 , 1)) = 0
_DirectLightInt("Direct Light Int", Range( 1 , 10)) = 1
_IndirectLightInt("Indirect Light Int", Range( 1 , 10)) = 1
_TranslucencyInt("Translucency Int", Range( 0 , 100)) = 0
[HideInInspector] _texcoord( "", 2D ) = "white" {}
[HideInInspector] __dirty( "", Int ) = 1
}
SubShader
{
Tags{ "RenderType" = "Grass" "Queue" = "Geometry+0" }
Cull Off
CGINCLUDE
#include "UnityPBSLighting.cginc"
#include "UnityShaderVariables.cginc"
#include "UnityCG.cginc"
#include "Lighting.cginc"
#pragma target 3.0
#pragma shader_feature_local _WIND_ON
#pragma shader_feature_local _FIXTHEBASEOFFOLIAGE_ON
#pragma shader_feature_local _SNOW_ON
#pragma shader_feature_local _COLOR2ENABLE_ON
#pragma shader_feature_local _COLOR2OVERLAYTYPE_VERTEX_POSITION_BASED _COLOR2OVERLAYTYPE_UV_BASED
#pragma shader_feature_local _SNOWOVERLAYTYPE_WORLD_NORMAL_BASED _SNOWOVERLAYTYPE_UV_BASED
#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
{
float3 worldPos;
float2 uv_texcoord;
float4 screenPosition;
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 _WindSpeed;
uniform float _WindWavesScale;
uniform float _WindForce;
uniform sampler2D _Texture00;
uniform float _Tiling;
uniform float _DirectLightOffset;
uniform float4 _Color1;
uniform float4 _Color2;
uniform float _Color2Level;
uniform float _Color2Fade;
uniform float4 _Texture00_ST;
uniform float _SnowAmount;
uniform sampler2D _SnowMask;
uniform float _SnowTiling;
uniform float _SnowFade;
uniform float _DirectLightInt;
uniform float _IndirectLightInt;
uniform sampler2D _SmoothnessTexture3;
uniform float _Smoothness;
uniform float _TranslucencyInt;
uniform float _AlphaCutoff;
float3 mod3D289( float3 x ) { return x - floor( x / 289.0 ) * 289.0; }
float4 mod3D289( float4 x ) { return x - floor( x / 289.0 ) * 289.0; }
float4 permute( float4 x ) { return mod3D289( ( x * 34.0 + 1.0 ) * x ); }
float4 taylorInvSqrt( float4 r ) { return 1.79284291400159 - r * 0.85373472095314; }
float snoise( float3 v )
{
const float2 C = float2( 1.0 / 6.0, 1.0 / 3.0 );
float3 i = floor( v + dot( v, C.yyy ) );
float3 x0 = v - i + dot( i, C.xxx );
float3 g = step( x0.yzx, x0.xyz );
float3 l = 1.0 - g;
float3 i1 = min( g.xyz, l.zxy );
float3 i2 = max( g.xyz, l.zxy );
float3 x1 = x0 - i1 + C.xxx;
float3 x2 = x0 - i2 + C.yyy;
float3 x3 = x0 - 0.5;
i = mod3D289( i);
float4 p = permute( permute( permute( i.z + float4( 0.0, i1.z, i2.z, 1.0 ) ) + i.y + float4( 0.0, i1.y, i2.y, 1.0 ) ) + i.x + float4( 0.0, i1.x, i2.x, 1.0 ) );
float4 j = p - 49.0 * floor( p / 49.0 ); // mod(p,7*7)
float4 x_ = floor( j / 7.0 );
float4 y_ = floor( j - 7.0 * x_ ); // mod(j,N)
float4 x = ( x_ * 2.0 + 0.5 ) / 7.0 - 1.0;
float4 y = ( y_ * 2.0 + 0.5 ) / 7.0 - 1.0;
float4 h = 1.0 - abs( x ) - abs( y );
float4 b0 = float4( x.xy, y.xy );
float4 b1 = float4( x.zw, y.zw );
float4 s0 = floor( b0 ) * 2.0 + 1.0;
float4 s1 = floor( b1 ) * 2.0 + 1.0;
float4 sh = -step( h, 0.0 );
float4 a0 = b0.xzyw + s0.xzyw * sh.xxyy;
float4 a1 = b1.xzyw + s1.xzyw * sh.zzww;
float3 g0 = float3( a0.xy, h.x );
float3 g1 = float3( a0.zw, h.y );
float3 g2 = float3( a1.xy, h.z );
float3 g3 = float3( a1.zw, h.w );
float4 norm = taylorInvSqrt( float4( dot( g0, g0 ), dot( g1, g1 ), dot( g2, g2 ), dot( g3, g3 ) ) );
g0 *= norm.x;
g1 *= norm.y;
g2 *= norm.z;
g3 *= norm.w;
float4 m = max( 0.6 - float4( dot( x0, x0 ), dot( x1, x1 ), dot( x2, x2 ), dot( x3, x3 ) ), 0.0 );
m = m* m;
m = m* m;
float4 px = float4( dot( x0, g0 ), dot( x1, g1 ), dot( x2, g2 ), dot( x3, g3 ) );
return 42.0 * dot( m, px);
}
inline float Dither4x4Bayer( int x, int y )
{
const float dither[ 16 ] = {
1, 9, 3, 11,
13, 5, 15, 7,
4, 12, 2, 10,
16, 8, 14, 6 };
int r = y * 4 + x;
return dither[r] / 16; // same # of instructions as pre-dividing due to compiler magic
}
void vertexDataFunc( inout appdata_full v, out Input o )
{
UNITY_INITIALIZE_OUTPUT( Input, o );
float3 ase_worldPos = mul( unity_ObjectToWorld, v.vertex );
float mulTime34 = _Time.y * ( _WindSpeed * 5 );
float simplePerlin3D35 = snoise( ( ase_worldPos + mulTime34 )*_WindWavesScale );
float temp_output_231_0 = ( simplePerlin3D35 * 0.01 );
#ifdef _FIXTHEBASEOFFOLIAGE_ON
float staticSwitch376 = ( temp_output_231_0 * pow( v.texcoord.xy.y , 2.0 ) );
#else
float staticSwitch376 = temp_output_231_0;
#endif
#ifdef _WIND_ON
float staticSwitch341 = ( staticSwitch376 * ( _WindForce * 30 ) );
#else
float staticSwitch341 = 0.0;
#endif
float Wind191 = staticSwitch341;
float3 temp_cast_0 = (Wind191).xxx;
v.vertex.xyz += temp_cast_0;
v.vertex.w = 1;
float4 ase_screenPos = ComputeScreenPos( UnityObjectToClipPos( v.vertex ) );
o.screenPosition = ase_screenPos;
}
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 temp_cast_0 = (_Tiling).xx;
float2 uv_TexCoord445 = i.uv_texcoord * temp_cast_0;
float2 Tiling446 = uv_TexCoord445;
float4 tex2DNode1 = tex2D( _Texture00, Tiling446 );
float OpacityMask263 = tex2DNode1.a;
float4 ase_screenPos = i.screenPosition;
float4 ase_screenPosNorm = ase_screenPos / ase_screenPos.w;
ase_screenPosNorm.z = ( UNITY_NEAR_CLIP_VALUE >= 0 ) ? ase_screenPosNorm.z : ase_screenPosNorm.z * 0.5 + 0.5;
float2 clipScreen458 = ase_screenPosNorm.xy * _ScreenParams.xy;
float dither458 = Dither4x4Bayer( fmod(clipScreen458.x, 4), fmod(clipScreen458.y, 4) );
dither458 = step( dither458, ( unity_LODFade.y > 0.0 ? unity_LODFade.y : 1.0 ) );
float3 ase_worldPos = i.worldPos;
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
float3 ase_worldlightDir = 0;
#else //aseld
float3 ase_worldlightDir = Unity_SafeNormalize( UnityWorldSpaceLightDir( ase_worldPos ) );
#endif //aseld
float3 ase_worldNormal = WorldNormalVector( i, float3( 0, 0, 1 ) );
float3 ase_normWorldNormal = normalize( ase_worldNormal );
float dotResult413 = dot( ase_worldlightDir , ase_normWorldNormal );
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
float4 ase_lightColor = 0;
#else //aselc
float4 ase_lightColor = _LightColor0;
#endif //aselc
float4 temp_output_10_0 = ( _Color1 * tex2DNode1 );
float3 ase_vertex3Pos = mul( unity_WorldToObject, float4( i.worldPos , 1 ) );
#if defined(_COLOR2OVERLAYTYPE_VERTEX_POSITION_BASED)
float staticSwitch360 = ase_vertex3Pos.y;
#elif defined(_COLOR2OVERLAYTYPE_UV_BASED)
float staticSwitch360 = i.uv_texcoord.y;
#else
float staticSwitch360 = ase_vertex3Pos.y;
#endif
float SecondColorMask335 = saturate( ( ( staticSwitch360 + _Color2Level ) * ( _Color2Fade * 2 ) ) );
float4 lerpResult332 = lerp( temp_output_10_0 , ( _Color2 * tex2D( _Texture00, Tiling446 ) ) , SecondColorMask335);
#ifdef _COLOR2ENABLE_ON
float4 staticSwitch340 = lerpResult332;
#else
float4 staticSwitch340 = temp_output_10_0;
#endif
float4 color288 = IsGammaSpace() ? float4(0.8962264,0.8962264,0.8962264,0) : float4(0.7799658,0.7799658,0.7799658,0);
float2 uv_Texture00 = i.uv_texcoord * _Texture00_ST.xy + _Texture00_ST.zw;
#if defined(_SNOWOVERLAYTYPE_WORLD_NORMAL_BASED)
float staticSwitch390 = ase_worldNormal.y;
#elif defined(_SNOWOVERLAYTYPE_UV_BASED)
float staticSwitch390 = i.uv_texcoord.y;
#else
float staticSwitch390 = ase_worldNormal.y;
#endif
float2 temp_cast_1 = (_SnowTiling).xx;
float2 uv_TexCoord464 = i.uv_texcoord * temp_cast_1;
float saferPower354 = abs( ( ( staticSwitch390 * ( _SnowAmount * 5 ) ) - tex2D( _SnowMask, uv_TexCoord464 ).r ) );
float SnowMask314 = saturate( pow( saferPower354 , ( _SnowFade * 20 ) ) );
float4 lerpResult295 = lerp( staticSwitch340 , ( color288 * tex2D( _Texture00, uv_Texture00 ) ) , SnowMask314);
#ifdef _SNOW_ON
float4 staticSwitch342 = lerpResult295;
#else
float4 staticSwitch342 = staticSwitch340;
#endif
float4 Albedo259 = staticSwitch342;
float4 DirectLight440 = ( ( saturate( (dotResult413*1.0 + _DirectLightOffset) ) * ase_lightAtten ) * ase_lightColor * Albedo259 * _DirectLightInt );
UnityGI gi462 = gi;
float3 diffNorm462 = ase_worldNormal;
gi462 = UnityGI_Base( data, 1, diffNorm462 );
float3 indirectDiffuse462 = gi462.indirect.diffuse + diffNorm462 * 0.0001;
float4 IndirectLight439 = ( float4( indirectDiffuse462 , 0.0 ) * Albedo259 * _IndirectLightInt );
SurfaceOutputStandard s443 = (SurfaceOutputStandard ) 0;
s443.Albedo = float3( 0,0,0 );
s443.Normal = ase_worldNormal;
s443.Emission = float3( 0,0,0 );
s443.Metallic = 0.0;
s443.Smoothness = ( tex2D( _SmoothnessTexture3, Tiling446 ) * _Smoothness ).r;
s443.Occlusion = 1.0;
data.light = gi.light;
UnityGI gi443 = gi;
#ifdef UNITY_PASS_FORWARDBASE
Unity_GlossyEnvironmentData g443 = UnityGlossyEnvironmentSetup( s443.Smoothness, data.worldViewDir, s443.Normal, float3(0,0,0));
gi443 = UnityGlobalIllumination( data, s443.Occlusion, s443.Normal, g443 );
#endif
float3 surfResult443 = LightingStandard ( s443, viewDir, gi443 ).rgb;
surfResult443 += s443.Emission;
#ifdef UNITY_PASS_FORWARDADD//443
surfResult443 -= s443.Emission;
#endif//443
float3 Smoothness441 = saturate( surfResult443 );
float3 ase_worldViewDir = Unity_SafeNormalize( UnityWorldSpaceViewDir( ase_worldPos ) );
float dotResult401 = dot( ase_worldlightDir , ase_worldViewDir );
float TranslucencyMask417 = (-dotResult401*1.0 + -0.2);
float dotResult399 = dot( ase_worldlightDir , ase_normWorldNormal );
float4 Translucency442 = saturate( ( ( TranslucencyMask417 * ( ( ( (dotResult399*1.0 + 1.0) * ase_lightAtten ) * ase_lightColor * Albedo259 ) * 0.25 ) ) * _TranslucencyInt ) );
c.rgb = ( DirectLight440 + IndirectLight439 + float4( Smoothness441 , 0.0 ) + Translucency442 ).rgb;
c.a = 1;
clip( ( OpacityMask263 * dither458 ) - _AlphaCutoff );
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 nolightmap nodynlightmap nodirlightmap nometa noforwardadd vertex:vertexDataFunc
ENDCG
Pass
{
Name "ShadowCaster"
Tags{ "LightMode" = "ShadowCaster" }
ZWrite On
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma target 3.0
#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 customPack2 : TEXCOORD2;
float4 tSpace0 : TEXCOORD3;
float4 tSpace1 : TEXCOORD4;
float4 tSpace2 : TEXCOORD5;
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;
o.customPack2.xyzw = customInputData.screenPosition;
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;
surfIN.screenPosition = IN.customPack2.xyzw;
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 );
UnityGI gi;
UNITY_INITIALIZE_OUTPUT( UnityGI, gi );
o.Alpha = LightingStandardCustomLighting( o, worldViewDir, gi ).a;
#if defined( CAN_SKIP_VPOS )
float2 vpos = IN.pos;
#endif
SHADOW_CASTER_FRAGMENT( IN )
}
ENDCG
}
}
Fallback "Diffuse"
}
/*ASEBEGIN
Version=18935
780.6793;156.6792;992.6038;586.6981;3874.662;2144.939;3.717417;True;False
Node;AmplifyShaderEditor.CommentaryNode;447;-2787.07,436.0726;Inherit;False;750;278.1;;3;446;444;445;Tiling;1,1,1,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;336;-3546.929,-476.2514;Inherit;False;1474.883;565.8699;;10;310;335;334;382;248;377;360;309;361;391;Second Color Mask;1,1,1,1;0;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;361;-3500.829,-247.2093;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.PosVertexDataNode;309;-3465.548,-405.9526;Inherit;False;0;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.CommentaryNode;313;-5466.776,-482.5264;Inherit;False;1858.103;826.4135;;15;305;314;354;349;350;291;362;299;363;322;390;312;352;464;465;Snow Mask;1,1,1,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;444;-2721.233,552.7335;Inherit;False;Property;_Tiling;Tiling;3;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;465;-5281.399,107.4906;Inherit;False;Property;_SnowTiling;Snow Tiling;4;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;445;-2533.233,533.7333;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.WorldNormalVector;312;-5398.226,-429.1961;Inherit;False;False;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.RangedFloatNode;248;-3156.202,-40.47443;Inherit;False;Property;_Color2Fade;Fade;12;0;Create;False;0;0;0;False;0;False;0.5;0.8;-1;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;310;-3049.677,-120.8673;Inherit;False;Property;_Color2Level;Level;11;0;Create;False;0;0;0;False;0;False;0;-0.24;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;352;-5429.32,-234.8225;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.RangedFloatNode;291;-5263.6,-91.42583;Inherit;False;Property;_SnowAmount;Amount;15;0;Create;False;0;0;0;False;0;False;0.5;0.358;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.StaticSwitch;360;-3241.447,-302.6742;Inherit;False;Property;_Color2OverlayType;Overlay Method;10;0;Create;False;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;2;Vertex_Position_Based;UV_Based;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.TextureCoordinatesNode;464;-5093.399,88.49036;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.SimpleAddOpNode;377;-2852.993,-219.3139;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.StaticSwitch;390;-5130.754,-301.3329;Inherit;False;Property;_SnowOverlayType;Overlay Method;14;0;Create;False;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;2;World_Normal_Based;UV_Based;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.ScaleNode;391;-2855.358,-37.0037;Inherit;False;2;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;446;-2258.231,529.7333;Inherit;False;Tiling;-1;True;1;0;FLOAT2;0,0;False;1;FLOAT2;0
Node;AmplifyShaderEditor.ScaleNode;322;-4946.734,-84.80173;Inherit;False;5;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;262;-5465.631,-1647.714;Inherit;False;2646.528;1067.095;;23;448;450;449;259;263;342;295;340;315;370;369;332;288;367;374;10;337;3;247;1;366;368;156;Albedo;1,1,1,1;0;0
Node;AmplifyShaderEditor.SamplerNode;363;-4813.988,33.03799;Inherit;True;Property;_SnowMask;Snow Mask;2;1;[SingleLineTexture];Create;True;0;0;0;False;0;False;-1;None;16d574e53541bba44a84052fa38778df;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.SimpleMultiplyOpNode;382;-2654.732,-130.5992;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;349;-4722.126,230.9095;Inherit;False;Property;_SnowFade;Fade;16;0;Create;False;0;0;0;False;0;False;0.3;0.252;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;448;-5412.208,-1091.293;Inherit;False;446;Tiling;1;0;OBJECT;;False;1;FLOAT2;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;299;-4731.806,-198.0521;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.WireNode;450;-5200.624,-958.4913;Inherit;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0
Node;AmplifyShaderEditor.SimpleSubtractOpNode;362;-4401.161,-84.57065;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SaturateNode;334;-2471.036,-131.0528;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.ScaleNode;350;-4408.739,236.1816;Inherit;False;20;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.TexturePropertyNode;368;-5183.645,-1144.078;Inherit;True;Property;_Texture00;Texture;0;1;[SingleLineTexture];Create;False;0;0;0;False;2;Header(Maps);Space(7);False;None;603a681375cacca45ae65a756606e807;False;white;Auto;Texture2D;-1;0;2;SAMPLER2D;0;SAMPLERSTATE;1
Node;AmplifyShaderEditor.WireNode;449;-5202.812,-1174.035;Inherit;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0
Node;AmplifyShaderEditor.SamplerNode;366;-4861.479,-960.2595;Inherit;True;Property;_TextureSample0;Texture Sample 0;18;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Instance;-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;247;-4777.857,-1146.771;Inherit;False;Property;_Color2;Second Color;9;0;Create;False;0;0;0;False;0;False;0,0,0,0;0.1597293,0.4433961,0.04433948,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SamplerNode;1;-4862.312,-1351.035;Inherit;True;Property;_LeavesTexture;Leaves Texture;0;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Instance;-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;3;-4780.577,-1540.59;Inherit;False;Property;_Color1;Main Color;5;0;Create;False;0;0;0;False;2;Header(Settings);Space(5);False;1,1,1,0;0.1386746,0.461,0.2773493,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.RegisterLocalVarNode;335;-2281.603,-136.4185;Inherit;False;SecondColorMask;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.PowerNode;354;-4189.933,66.05038;Inherit;False;True;2;0;FLOAT;0;False;1;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;337;-4495.567,-1227.672;Inherit;False;335;SecondColorMask;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.WireNode;374;-4883.29,-774.5762;Inherit;False;1;0;SAMPLER2D;;False;1;SAMPLER2D;0
Node;AmplifyShaderEditor.SaturateNode;305;-4012.858,65.51949;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;10;-4457.864,-1451.376;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;367;-4461.048,-1057.932;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SamplerNode;369;-4263.512,-831.2733;Inherit;True;Property;_TextureSample1;Texture Sample 1;18;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Instance;-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.RegisterLocalVarNode;314;-3844.451,61.15887;Inherit;False;SnowMask;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.LerpOp;332;-4191.402,-1271.017;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.ColorNode;288;-4174.92,-1029.744;Inherit;False;Constant;_SnowColor;Snow Color;12;0;Create;True;0;0;0;False;0;False;0.8962264,0.8962264,0.8962264,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.CommentaryNode;392;-5462.447,1272.131;Inherit;False;2898.686;1981.707;;5;425;412;404;394;393;Lighting;0.7,0.686289,0.49,1;0;0
Node;AmplifyShaderEditor.StaticSwitch;340;-3859.422,-1455.011;Inherit;False;Property;_Color2Enable;Enable;8;0;Create;False;0;0;0;False;2;Header(Second Color Settings);Space(5);False;0;0;0;True;;Toggle;2;Key0;Key1;Create;True;True;All;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.CommentaryNode;66;-5466.88,434.7253;Inherit;False;2621.259;742.2787;;18;191;341;188;56;345;190;36;376;359;356;231;35;358;357;182;228;34;344;Wind;1,1,1,1;0;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;370;-3860.318,-934.1633;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.CommentaryNode;393;-5361.706,2675.193;Inherit;False;2228.953;513.9716;;17;442;435;434;427;424;421;418;415;411;408;406;402;400;399;398;397;463;Translucency;0.8,0.7843137,0.5607843,1;0;0
Node;AmplifyShaderEditor.CommentaryNode;394;-5364.779,1393.619;Inherit;False;1214.467;434.7671;;7;417;407;405;403;401;396;395;Translucency Mask;0.8,0.7843137,0.5607843,1;0;0
Node;AmplifyShaderEditor.GetLocalVarNode;315;-3788.891,-1227.871;Inherit;False;314;SnowMask;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.ViewDirInputsCoordNode;395;-5252.485,1606.638;Inherit;False;World;True;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.LerpOp;295;-3568.515,-1269.782;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.WorldSpaceLightDirHlpNode;398;-5316.385,2740.921;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.RangedFloatNode;36;-5432.24,691.3121;Inherit;False;Property;_WindSpeed;Speed;20;0;Create;False;0;0;0;False;0;False;0.5;0.2;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;396;-5314.778,1443.62;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.WorldNormalVector;397;-5286.607,2888.92;Inherit;False;True;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.RangedFloatNode;400;-5017.406,2950.468;Inherit;False;Constant;_Float1;Float 1;18;0;Create;True;0;0;0;False;0;False;1;0;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.ScaleNode;344;-5135.242,696.7037;Inherit;False;5;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.DotProductOpNode;401;-5000.993,1524.467;Inherit;True;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.DotProductOpNode;399;-5013.608,2808.92;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.StaticSwitch;342;-3277.597,-1452.366;Inherit;False;Property;_SNOW;Enable;13;0;Create;False;0;0;0;False;2;Header(Show Settings);Space(5);False;0;0;0;True;;Toggle;2;Key0;Key1;Create;True;True;All;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;403;-4886.512,1748.443;Inherit;False;Constant;_TranslucencyOffset;Translucency Offset;19;0;Create;True;0;0;0;False;0;False;-0.2;0;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.WorldPosInputsNode;228;-4965.367,528.4799;Inherit;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.SimpleTimeNode;34;-4965.56,696.4692;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.NegateNode;405;-4787.39,1525.151;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.LightAttenuation;463;-4764.616,2965.657;Inherit;False;0;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;259;-3046.768,-1456.52;Inherit;False;Albedo;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.CommentaryNode;404;-5366.333,1896.834;Inherit;False;1679.855;716.6;;13;440;437;433;432;430;428;423;420;416;413;410;409;461;Direct Light;0.8,0.7843137,0.5607843,1;0;0
Node;AmplifyShaderEditor.ScaleAndOffsetNode;402;-4765.339,2810.053;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CommentaryNode;412;-4103.667,1396.346;Inherit;False;1479.169;401.6033;;7;441;436;426;422;419;414;443;Smoothness;0.8,0.7843137,0.5607843,1;0;0
Node;AmplifyShaderEditor.RangedFloatNode;190;-4870.377,811.9411;Inherit;False;Property;_WindWavesScale;Waves Scale;19;0;Create;False;0;0;0;False;0;False;0.25;0.4;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;410;-5325.434,1969.801;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.SimpleAddOpNode;182;-4719.293,608.7031;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.GetLocalVarNode;406;-4527.381,3097.51;Inherit;False;259;Albedo;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.LightColorNode;411;-4509.65,2972.542;Inherit;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
Node;AmplifyShaderEditor.WorldNormalVector;409;-5293.338,2125.355;Inherit;False;True;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
Node;AmplifyShaderEditor.ScaleAndOffsetNode;407;-4624.75,1613.723;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;408;-4490.469,2862.259;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;358;-4405.196,1070.673;Inherit;False;Constant;_Float0;Float 0;14;0;Create;True;0;0;0;False;0;False;2;2;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;415;-4285.006,2949.23;Inherit;False;3;3;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.DotProductOpNode;413;-5026.275,2040.562;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;416;-5095.354,2190.44;Inherit;False;Property;_DirectLightOffset;Direct Light Offset;22;0;Create;True;0;0;0;False;2;Header(Lighting Settings);Space(5);False;0;0;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;414;-4064.032,1482.131;Inherit;False;446;Tiling;1;0;OBJECT;;False;1;FLOAT2;0
Node;AmplifyShaderEditor.NoiseGeneratorNode;35;-4506.449,699.5806;Inherit;True;Simplex3D;False;False;2;0;FLOAT3;0,0,0;False;1;FLOAT;0.4;False;1;FLOAT;0
Node;AmplifyShaderEditor.TextureCoordinatesNode;357;-4483.792,940.533;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.RegisterLocalVarNode;417;-4396.828,1608.337;Inherit;False;TranslucencyMask;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SamplerNode;419;-3862.988,1457.242;Inherit;True;Property;_SmoothnessTexture3;Smoothness;1;1;[SingleLineTexture];Create;False;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.RangedFloatNode;422;-3838.436,1687.676;Inherit;False;Property;_Smoothness;Smoothness;7;0;Create;True;0;0;0;False;0;False;0;0.07;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.ScaleAndOffsetNode;420;-4778.006,2041.694;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.ScaleNode;418;-4113.641,2948.857;Inherit;False;0.25;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.ScaleNode;231;-4188.372,703.8373;Inherit;False;0.01;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.PowerNode;356;-4198.264,960.5025;Inherit;False;False;2;0;FLOAT;0;False;1;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;421;-4211.854,2836.586;Inherit;False;417;TranslucencyMask;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;424;-3916.838,2879.035;Inherit;False;2;2;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.CommentaryNode;425;-3630.025,1900.546;Inherit;False;933.2305;378.5339;;5;439;438;431;429;462;Indirect Light;0.8,0.7843137,0.5607843,1;0;0
Node;AmplifyShaderEditor.SaturateNode;423;-4544.02,2041.592;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;426;-3491.987,1583.242;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;56;-3952.269,977.8912;Inherit;False;Property;_WindForce;Force;18;0;Create;False;0;0;0;False;0;False;0.3;0.48;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;427;-4047.613,3062.894;Inherit;False;Property;_TranslucencyInt;Translucency Int;25;0;Create;True;0;0;0;False;0;False;0;8;0;100;0;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;359;-3989.254,821.5805;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.LightAttenuation;461;-4582.841,2241.318;Inherit;False;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;428;-4357.409,2432.611;Inherit;False;259;Albedo;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;429;-3590.024,2147.642;Inherit;False;Property;_IndirectLightInt;Indirect Light Int;24;0;Create;True;0;0;0;False;0;False;1;1;1;10;0;1;FLOAT;0
Node;AmplifyShaderEditor.IndirectDiffuseLighting;462;-3535.912,1950.822;Inherit;False;Tangent;1;0;FLOAT3;0,0,1;False;1;FLOAT3;0
Node;AmplifyShaderEditor.ScaleNode;345;-3665.352,982.3984;Inherit;False;30;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;431;-3489.251,2044.545;Inherit;False;259;Albedo;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;434;-3718.531,2945.038;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;433;-4326.078,2163.435;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.CustomStandardSurface;443;-3307.774,1488.447;Inherit;False;Metallic;Tangent;6;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,1;False;2;FLOAT3;0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;1;False;1;FLOAT3;0
Node;AmplifyShaderEditor.LightColorNode;432;-4339.132,2313.63;Inherit;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
Node;AmplifyShaderEditor.StaticSwitch;376;-3795.695,700.9271;Inherit;False;Property;_Fixthebaseoffoliage;Anchor the foliage base;21;0;Create;False;0;0;0;False;0;False;0;0;0;True;;Toggle;2;Key0;Key1;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;430;-4460.419,2523.262;Inherit;False;Property;_DirectLightInt;Direct Light Int;23;0;Create;True;0;0;0;False;0;False;1;1;1;10;0;1;FLOAT;0
Node;AmplifyShaderEditor.SaturateNode;435;-3544.774,2945.197;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SaturateNode;436;-3029.443,1489.01;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;437;-4096.474,2334.455;Inherit;False;4;4;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;188;-3463.908,823.2846;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;-1;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;438;-3221.504,2026.079;Inherit;True;3;3;0;FLOAT3;0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.LODFadeNode;456;-2652.505,-1295.872;Inherit;False;False;0;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.RegisterLocalVarNode;441;-2832.614,1484.81;Inherit;False;Smoothness;-1;True;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
Node;AmplifyShaderEditor.Compare;457;-2405.401,-1323.656;Inherit;False;2;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;1;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;440;-3913.9,2329.491;Inherit;False;DirectLight;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.StaticSwitch;341;-3275.733,794.1859;Inherit;False;Property;_WIND;Enable;17;0;Create;False;0;0;0;False;2;Header(Wind Settings);Space(5);False;0;1;1;True;;Toggle;2;Key0;Key1;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.RegisterLocalVarNode;442;-3365.886,2940.199;Inherit;False;Translucency;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;439;-2939.794,2021.035;Inherit;False;IndirectLight;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;263;-4489.452,-1309.93;Inherit;False;OpacityMask;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RegisterLocalVarNode;191;-3060.489,793.7185;Inherit;False;Wind;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;459;-2179.402,-1340.656;Inherit;False;263;OpacityMask;1;0;OBJECT;;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;451;-2172.163,-1089.828;Inherit;False;440;DirectLight;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.GetLocalVarNode;452;-2180.163,-1002.828;Inherit;False;439;IndirectLight;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.DitheringNode;458;-2171.401,-1227.656;Inherit;False;0;False;4;0;FLOAT;0;False;1;SAMPLER2D;;False;2;FLOAT4;0,0,0,0;False;3;SAMPLERSTATE;;False;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;453;-2180.163,-910.8277;Inherit;False;441;Smoothness;1;0;OBJECT;;False;1;FLOAT3;0
Node;AmplifyShaderEditor.GetLocalVarNode;454;-2184.163,-821.8277;Inherit;False;442;Translucency;1;0;OBJECT;;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleAddOpNode;455;-1914.162,-992.8277;Inherit;False;4;4;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT3;0,0,0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;460;-1939.64,-1298.29;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;156;-3949.634,-716.5307;Inherit;False;Property;_AlphaCutoff;Alpha Cutoff;6;0;Create;True;0;0;0;False;0;False;0.35;0.35;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.GetLocalVarNode;236;-1946.258,-745.3771;Inherit;False;191;Wind;1;0;OBJECT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;151;-1717.934,-1233.323;Float;False;True;-1;2;;0;0;CustomLighting;Animpic/Foliage;False;False;False;False;False;False;True;True;True;False;True;True;False;False;False;False;False;False;False;False;False;Off;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Custom;0.45;True;True;0;True;Grass;;Geometry;All;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;5;False;-1;10;False;-1;0;5;False;-1;10;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;True;True;Relative;0;;-1;-1;-1;-1;0;False;0;0;False;-1;-1;0;True;156;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;445;0;444;0
WireConnection;360;1;309;2
WireConnection;360;0;361;2
WireConnection;464;0;465;0
WireConnection;377;0;360;0
WireConnection;377;1;310;0
WireConnection;390;1;312;2
WireConnection;390;0;352;2
WireConnection;391;0;248;0
WireConnection;446;0;445;0
WireConnection;322;0;291;0
WireConnection;363;1;464;0
WireConnection;382;0;377;0
WireConnection;382;1;391;0
WireConnection;299;0;390;0
WireConnection;299;1;322;0
WireConnection;450;0;448;0
WireConnection;362;0;299;0
WireConnection;362;1;363;1
WireConnection;334;0;382;0
WireConnection;350;0;349;0
WireConnection;449;0;448;0
WireConnection;366;0;368;0
WireConnection;366;1;450;0
WireConnection;1;0;368;0
WireConnection;1;1;449;0
WireConnection;335;0;334;0
WireConnection;354;0;362;0
WireConnection;354;1;350;0
WireConnection;374;0;368;0
WireConnection;305;0;354;0
WireConnection;10;0;3;0
WireConnection;10;1;1;0
WireConnection;367;0;247;0
WireConnection;367;1;366;0
WireConnection;369;0;374;0
WireConnection;314;0;305;0
WireConnection;332;0;10;0
WireConnection;332;1;367;0
WireConnection;332;2;337;0
WireConnection;340;1;10;0
WireConnection;340;0;332;0
WireConnection;370;0;288;0
WireConnection;370;1;369;0
WireConnection;295;0;340;0
WireConnection;295;1;370;0
WireConnection;295;2;315;0
WireConnection;344;0;36;0
WireConnection;401;0;396;0
WireConnection;401;1;395;0
WireConnection;399;0;398;0
WireConnection;399;1;397;0
WireConnection;342;1;340;0
WireConnection;342;0;295;0
WireConnection;34;0;344;0
WireConnection;405;0;401;0
WireConnection;259;0;342;0
WireConnection;402;0;399;0
WireConnection;402;2;400;0
WireConnection;182;0;228;0
WireConnection;182;1;34;0
WireConnection;407;0;405;0
WireConnection;407;2;403;0
WireConnection;408;0;402;0
WireConnection;408;1;463;0
WireConnection;415;0;408;0
WireConnection;415;1;411;0
WireConnection;415;2;406;0
WireConnection;413;0;410;0
WireConnection;413;1;409;0
WireConnection;35;0;182;0
WireConnection;35;1;190;0
WireConnection;417;0;407;0
WireConnection;419;1;414;0
WireConnection;420;0;413;0
WireConnection;420;2;416;0
WireConnection;418;0;415;0
WireConnection;231;0;35;0
WireConnection;356;0;357;2
WireConnection;356;1;358;0
WireConnection;424;0;421;0
WireConnection;424;1;418;0
WireConnection;423;0;420;0
WireConnection;426;0;419;0
WireConnection;426;1;422;0
WireConnection;359;0;231;0
WireConnection;359;1;356;0
WireConnection;345;0;56;0
WireConnection;434;0;424;0
WireConnection;434;1;427;0
WireConnection;433;0;423;0
WireConnection;433;1;461;0
WireConnection;443;4;426;0
WireConnection;376;1;231;0
WireConnection;376;0;359;0
WireConnection;435;0;434;0
WireConnection;436;0;443;0
WireConnection;437;0;433;0
WireConnection;437;1;432;0
WireConnection;437;2;428;0
WireConnection;437;3;430;0
WireConnection;188;0;376;0
WireConnection;188;1;345;0
WireConnection;438;0;462;0
WireConnection;438;1;431;0
WireConnection;438;2;429;0
WireConnection;441;0;436;0
WireConnection;457;0;456;2
WireConnection;457;2;456;2
WireConnection;440;0;437;0
WireConnection;341;0;188;0
WireConnection;442;0;435;0
WireConnection;439;0;438;0
WireConnection;263;0;1;4
WireConnection;191;0;341;0
WireConnection;458;0;457;0
WireConnection;455;0;451;0
WireConnection;455;1;452;0
WireConnection;455;2;453;0
WireConnection;455;3;454;0
WireConnection;460;0;459;0
WireConnection;460;1;458;0
WireConnection;151;10;460;0
WireConnection;151;13;455;0
WireConnection;151;11;236;0
ASEEND*/
//CHKSM=197A2CCC6D06C7930309DD75A1501157B3541B13