339 lines
19 KiB
Plaintext
339 lines
19 KiB
Plaintext
|
|
// Made with Amplify Shader Editor
|
||
|
|
// Available at the Unity Asset Store - http://u3d.as/y3X
|
||
|
|
Shader "Polygonmaker/SkinCutout - Forward (Specular)"
|
||
|
|
{
|
||
|
|
Properties
|
||
|
|
{
|
||
|
|
_Cutoff( "Mask Clip Value", Float ) = 0.5
|
||
|
|
_MainTex("Diffuse", 2D) = "white" {}
|
||
|
|
_Color("Main Color", Color) = (1,1,1,0)
|
||
|
|
_ColorR("Color (R)", Color) = (1,1,1,0)
|
||
|
|
_ColorG("Color (G)", Color) = (1,1,1,0)
|
||
|
|
_ColorB("Color (B)", Color) = (1,1,1,0)
|
||
|
|
_TextureSample0("Color Mask (R,G,B)", 2D) = "white" {}
|
||
|
|
_MetallicGlossMap("Specular (R), Gloss (Alpha)", 2D) = "black" {}
|
||
|
|
_Glossiness("Glossiness Intensity", Range( 0 , 2)) = 1
|
||
|
|
_BumpMap("Normal", 2D) = "bump" {}
|
||
|
|
_OcclusionMap("Occlusion (G)", 2D) = "white" {}
|
||
|
|
_EmissionMap("Emission", 2D) = "white" {}
|
||
|
|
_EmissionColor("Emission Color", Color) = (0,0,0,0)
|
||
|
|
_EmissionIntensity("Emission Intensity", Range( 0 , 10)) = 1
|
||
|
|
_SkinHairColor("Skin Hair - Color", Color) = (0.5,0.5,0.5,0)
|
||
|
|
_SkinHairIntensity("Skin Hair Intensity", Range( 0 , 5)) = 2
|
||
|
|
_SSS("SSS", Color) = (0.3529412,0,0,0)
|
||
|
|
_SkinMaskB("Skin Mask (B)", 2D) = "white" {}
|
||
|
|
[Header(Translucency)]
|
||
|
|
_Translucency("Strength", Range( 0 , 50)) = 1
|
||
|
|
_TransNormalDistortion("Normal Distortion", Range( 0 , 1)) = 0.1
|
||
|
|
_TransScattering("Scaterring Falloff", Range( 1 , 50)) = 2
|
||
|
|
_TransDirect("Direct", Range( 0 , 1)) = 1
|
||
|
|
_TransAmbient("Ambient", Range( 0 , 1)) = 0.2
|
||
|
|
_TransShadow("Shadow", Range( 0 , 1)) = 0.9
|
||
|
|
[HideInInspector] _texcoord( "", 2D ) = "white" {}
|
||
|
|
[HideInInspector] __dirty( "", Int ) = 1
|
||
|
|
}
|
||
|
|
|
||
|
|
SubShader
|
||
|
|
{
|
||
|
|
Tags{ "RenderType" = "TransparentCutout" "Queue" = "Geometry+0" "IsEmissive" = "true" }
|
||
|
|
Cull Off
|
||
|
|
CGINCLUDE
|
||
|
|
#include "UnityPBSLighting.cginc"
|
||
|
|
#include "Lighting.cginc"
|
||
|
|
#pragma target 3.0
|
||
|
|
#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 SurfaceOutputStandardSpecularCustom
|
||
|
|
{
|
||
|
|
half3 Albedo;
|
||
|
|
half3 Normal;
|
||
|
|
half3 Emission;
|
||
|
|
half3 Specular;
|
||
|
|
half Smoothness;
|
||
|
|
half Occlusion;
|
||
|
|
half Alpha;
|
||
|
|
half3 Translucency;
|
||
|
|
};
|
||
|
|
|
||
|
|
uniform sampler2D _BumpMap;
|
||
|
|
uniform float4 _BumpMap_ST;
|
||
|
|
uniform float4 _ColorR;
|
||
|
|
uniform sampler2D _TextureSample0;
|
||
|
|
SamplerState sampler_TextureSample0;
|
||
|
|
uniform float4 _TextureSample0_ST;
|
||
|
|
uniform float4 _ColorG;
|
||
|
|
uniform float4 _ColorB;
|
||
|
|
uniform float4 _SkinHairColor;
|
||
|
|
uniform float _SkinHairIntensity;
|
||
|
|
uniform sampler2D _SkinMaskB;
|
||
|
|
SamplerState sampler_SkinMaskB;
|
||
|
|
uniform float4 _SkinMaskB_ST;
|
||
|
|
uniform float4 _Color;
|
||
|
|
uniform sampler2D _MainTex;
|
||
|
|
uniform float4 _MainTex_ST;
|
||
|
|
uniform sampler2D _EmissionMap;
|
||
|
|
uniform float4 _EmissionMap_ST;
|
||
|
|
uniform float4 _EmissionColor;
|
||
|
|
uniform float _EmissionIntensity;
|
||
|
|
uniform sampler2D _MetallicGlossMap;
|
||
|
|
SamplerState sampler_MetallicGlossMap;
|
||
|
|
uniform float4 _MetallicGlossMap_ST;
|
||
|
|
uniform float _Glossiness;
|
||
|
|
uniform sampler2D _OcclusionMap;
|
||
|
|
SamplerState sampler_OcclusionMap;
|
||
|
|
uniform float4 _OcclusionMap_ST;
|
||
|
|
uniform half _Translucency;
|
||
|
|
uniform half _TransNormalDistortion;
|
||
|
|
uniform half _TransScattering;
|
||
|
|
uniform half _TransDirect;
|
||
|
|
uniform half _TransAmbient;
|
||
|
|
uniform half _TransShadow;
|
||
|
|
uniform float4 _SSS;
|
||
|
|
uniform float _Cutoff = 0.5;
|
||
|
|
|
||
|
|
inline half4 LightingStandardSpecularCustom(SurfaceOutputStandardSpecularCustom s, half3 viewDir, UnityGI gi )
|
||
|
|
{
|
||
|
|
#if !DIRECTIONAL
|
||
|
|
float3 lightAtten = gi.light.color;
|
||
|
|
#else
|
||
|
|
float3 lightAtten = lerp( _LightColor0.rgb, gi.light.color, _TransShadow );
|
||
|
|
#endif
|
||
|
|
half3 lightDir = gi.light.dir + s.Normal * _TransNormalDistortion;
|
||
|
|
half transVdotL = pow( saturate( dot( viewDir, -lightDir ) ), _TransScattering );
|
||
|
|
half3 translucency = lightAtten * (transVdotL * _TransDirect + gi.indirect.diffuse * _TransAmbient) * s.Translucency;
|
||
|
|
half4 c = half4( s.Albedo * translucency * _Translucency, 0 );
|
||
|
|
|
||
|
|
SurfaceOutputStandardSpecular r;
|
||
|
|
r.Albedo = s.Albedo;
|
||
|
|
r.Normal = s.Normal;
|
||
|
|
r.Emission = s.Emission;
|
||
|
|
r.Specular = s.Specular;
|
||
|
|
r.Smoothness = s.Smoothness;
|
||
|
|
r.Occlusion = s.Occlusion;
|
||
|
|
r.Alpha = s.Alpha;
|
||
|
|
return LightingStandardSpecular (r, viewDir, gi) + c;
|
||
|
|
}
|
||
|
|
|
||
|
|
inline void LightingStandardSpecularCustom_GI(SurfaceOutputStandardSpecularCustom s, UnityGIInput data, inout UnityGI gi )
|
||
|
|
{
|
||
|
|
#if defined(UNITY_PASS_DEFERRED) && UNITY_ENABLE_REFLECTION_BUFFERS
|
||
|
|
gi = UnityGlobalIllumination(data, s.Occlusion, s.Normal);
|
||
|
|
#else
|
||
|
|
UNITY_GLOSSY_ENV_FROM_SURFACE( g, s, data );
|
||
|
|
gi = UnityGlobalIllumination( data, s.Occlusion, s.Normal, g );
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
void surf( Input i , inout SurfaceOutputStandardSpecularCustom o )
|
||
|
|
{
|
||
|
|
float2 uv_BumpMap = i.uv_texcoord * _BumpMap_ST.xy + _BumpMap_ST.zw;
|
||
|
|
o.Normal = UnpackNormal( tex2D( _BumpMap, uv_BumpMap ) );
|
||
|
|
float2 uv_TextureSample0 = i.uv_texcoord * _TextureSample0_ST.xy + _TextureSample0_ST.zw;
|
||
|
|
float4 tex2DNode27 = tex2D( _TextureSample0, uv_TextureSample0 );
|
||
|
|
float3 ase_worldPos = i.worldPos;
|
||
|
|
float3 ase_worldViewDir = normalize( UnityWorldSpaceViewDir( ase_worldPos ) );
|
||
|
|
float3 ase_worldNormal = WorldNormalVector( i, float3( 0, 0, 1 ) );
|
||
|
|
float fresnelNdotV14 = dot( ase_worldNormal, ase_worldViewDir );
|
||
|
|
float fresnelNode14 = ( 0.0 + 1.0 * pow( 1.0 - fresnelNdotV14, _SkinHairIntensity ) );
|
||
|
|
float2 uv_SkinMaskB = i.uv_texcoord * _SkinMaskB_ST.xy + _SkinMaskB_ST.zw;
|
||
|
|
float4 tex2DNode25 = tex2D( _SkinMaskB, uv_SkinMaskB );
|
||
|
|
float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;
|
||
|
|
float4 tex2DNode3 = tex2D( _MainTex, uv_MainTex );
|
||
|
|
o.Albedo = ( ( ( _ColorR * tex2DNode27.r ) + ( 1.0 - tex2DNode27.r ) ) * ( ( _ColorG * tex2DNode27.g ) + ( 1.0 - tex2DNode27.g ) ) * ( ( _ColorB * tex2DNode27.b ) + ( 1.0 - tex2DNode27.b ) ) * ( ( _SkinHairColor * fresnelNode14 * tex2DNode25.b ) + ( _Color * tex2DNode3 ) ) ).rgb;
|
||
|
|
float2 uv_EmissionMap = i.uv_texcoord * _EmissionMap_ST.xy + _EmissionMap_ST.zw;
|
||
|
|
o.Emission = ( tex2D( _EmissionMap, uv_EmissionMap ) * _EmissionColor * _EmissionIntensity ).rgb;
|
||
|
|
float2 uv_MetallicGlossMap = i.uv_texcoord * _MetallicGlossMap_ST.xy + _MetallicGlossMap_ST.zw;
|
||
|
|
float4 tex2DNode5 = tex2D( _MetallicGlossMap, uv_MetallicGlossMap );
|
||
|
|
float3 temp_cast_2 = (tex2DNode5.r).xxx;
|
||
|
|
o.Specular = temp_cast_2;
|
||
|
|
o.Smoothness = ( tex2DNode5.a * _Glossiness );
|
||
|
|
float2 uv_OcclusionMap = i.uv_texcoord * _OcclusionMap_ST.xy + _OcclusionMap_ST.zw;
|
||
|
|
o.Occlusion = tex2D( _OcclusionMap, uv_OcclusionMap ).g;
|
||
|
|
o.Translucency = ( _SSS * tex2DNode25.b ).rgb;
|
||
|
|
o.Alpha = 1;
|
||
|
|
clip( tex2DNode3.a - _Cutoff );
|
||
|
|
}
|
||
|
|
|
||
|
|
ENDCG
|
||
|
|
CGPROGRAM
|
||
|
|
#pragma surface surf StandardSpecularCustom keepalpha fullforwardshadows exclude_path:deferred
|
||
|
|
|
||
|
|
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 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;
|
||
|
|
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;
|
||
|
|
SurfaceOutputStandardSpecularCustom o;
|
||
|
|
UNITY_INITIALIZE_OUTPUT( SurfaceOutputStandardSpecularCustom, 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=18500
|
||
|
|
638.6667;380;1619;998;1908.626;1090.723;2.161006;True;True
|
||
|
|
Node;AmplifyShaderEditor.RangedFloatNode;15;-1171.005,-373.2687;Float;False;Property;_SkinHairIntensity;Skin Hair Intensity;15;0;Create;True;0;0;False;0;False;2;1.81;0;5;0;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;9;-741.5183,-235.2386;Float;False;Property;_Color;Main Color;2;0;Create;False;0;0;False;0;False;1,1,1,0;1,1,1,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.FresnelNode;14;-800.4213,-414.5428;Inherit;False;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;5;False;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;17;-781.5003,-587.1234;Float;False;Property;_SkinHairColor;Skin Hair - Color;14;0;Create;True;0;0;False;0;False;0.5,0.5,0.5,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;3;-785.4993,-65.89998;Inherit;True;Property;_MainTex;Diffuse;1;0;Create;False;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.SamplerNode;27;-1004.261,-1144.086;Inherit;True;Property;_TextureSample0;Color Mask (R,G,B);6;0;Create;False;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;28;-594.8345,-1323.397;Float;False;Property;_ColorR;Color (R);3;0;Create;True;0;0;False;0;False;1,1,1,0;0.4485294,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;30;-549.2832,-908.6011;Float;False;Property;_ColorB;Color (B);5;0;Create;True;0;0;False;0;False;1,1,1,0;0.2647059,0.2214831,0.04087371,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;25;-377.8577,1208.357;Inherit;True;Property;_SkinMaskB;Skin Mask (B);17;0;Create;True;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;29;-557.8826,-1072.001;Float;False;Property;_ColorG;Color (G);4;0;Create;True;0;0;False;0;False;1,1,1,0;0,0.02205884,0.008367144,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.OneMinusNode;39;-63.72692,-1122.339;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;32;-230.412,-1046.133;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;31;-234.2333,-1183.411;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;33;-222.1463,-938.8314;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.OneMinusNode;44;-67.0598,-860.9305;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;18;-435.1952,-447.2185;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;16;-296.7607,-116.0637;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.OneMinusNode;40;-58.14328,-990.8495;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;5;-696.5,310;Inherit;True;Property;_MetallicGlossMap;Specular (R), Gloss (Alpha);7;0;Create;False;0;0;False;0;False;-1;None;None;True;0;False;black;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;13;-257.3337,977.4634;Float;False;Property;_SSS;SSS;16;0;Create;True;0;0;False;0;False;0.3529412,0,0,0;0.5,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;42;316.7738,-1043.939;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;38;320.5785,-1185.839;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;43;325.2569,-884.7508;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.ColorNode;8;-632.4804,725.167;Float;False;Property;_EmissionColor;Emission Color;12;0;Create;False;0;0;False;0;False;0,0,0,0;0,0,0,1;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;6;-695.2,503.3;Inherit;True;Property;_EmissionMap;Emission;11;0;Create;False;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;11;-594.78,898.0663;Float;False;Property;_EmissionIntensity;Emission Intensity;13;0;Create;True;0;0;False;0;False;1;1;0;10;0;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleAddOpNode;24;13.13452,-175.5545;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.RangedFloatNode;23;-353.1679,433.4667;Float;False;Property;_Glossiness;Glossiness Intensity;8;0;Create;False;0;0;False;0;False;1;1;0;2;0;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;10;-315.2809,556.1683;Inherit;False;3;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;12;222.0597,639.113;Float;False;Constant;_Float1;Float 1;4;0;Create;True;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;26;52.73852,1106.82;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;22;-27.05094,399.4961;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;4;-692.5,118;Inherit;True;Property;_BumpMap;Normal;9;0;Create;False;0;0;False;0;False;-1;None;None;True;0;True;bump;Auto;True;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||
|
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;51;538.6124,-1023.162;Inherit;False;4;4;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
|
||
|
|
Node;AmplifyShaderEditor.SamplerNode;20;-679.5816,986.4391;Inherit;True;Property;_OcclusionMap;Occlusion (G);10;0;Create;False;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.StandardSurfaceOutputNode;0;263.2717,2.384186E-07;Float;False;True;-1;2;ASEMaterialInspector;0;0;StandardSpecular;Polygonmaker/SkinCutout - Forward (Specular);False;False;False;False;False;False;False;False;False;False;False;False;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.5;True;True;0;True;TransparentCutout;;Geometry;ForwardOnly;14;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;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;0;18;-1;-1;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;16;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;5;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;14;3;15;0
|
||
|
|
WireConnection;39;0;27;1
|
||
|
|
WireConnection;32;0;29;0
|
||
|
|
WireConnection;32;1;27;2
|
||
|
|
WireConnection;31;0;28;0
|
||
|
|
WireConnection;31;1;27;1
|
||
|
|
WireConnection;33;0;30;0
|
||
|
|
WireConnection;33;1;27;3
|
||
|
|
WireConnection;44;0;27;3
|
||
|
|
WireConnection;18;0;17;0
|
||
|
|
WireConnection;18;1;14;0
|
||
|
|
WireConnection;18;2;25;3
|
||
|
|
WireConnection;16;0;9;0
|
||
|
|
WireConnection;16;1;3;0
|
||
|
|
WireConnection;40;0;27;2
|
||
|
|
WireConnection;42;0;32;0
|
||
|
|
WireConnection;42;1;40;0
|
||
|
|
WireConnection;38;0;31;0
|
||
|
|
WireConnection;38;1;39;0
|
||
|
|
WireConnection;43;0;33;0
|
||
|
|
WireConnection;43;1;44;0
|
||
|
|
WireConnection;24;0;18;0
|
||
|
|
WireConnection;24;1;16;0
|
||
|
|
WireConnection;10;0;6;0
|
||
|
|
WireConnection;10;1;8;0
|
||
|
|
WireConnection;10;2;11;0
|
||
|
|
WireConnection;26;0;13;0
|
||
|
|
WireConnection;26;1;25;3
|
||
|
|
WireConnection;22;0;5;4
|
||
|
|
WireConnection;22;1;23;0
|
||
|
|
WireConnection;51;0;38;0
|
||
|
|
WireConnection;51;1;42;0
|
||
|
|
WireConnection;51;2;43;0
|
||
|
|
WireConnection;51;3;24;0
|
||
|
|
WireConnection;0;0;51;0
|
||
|
|
WireConnection;0;1;4;0
|
||
|
|
WireConnection;0;2;10;0
|
||
|
|
WireConnection;0;3;5;1
|
||
|
|
WireConnection;0;4;22;0
|
||
|
|
WireConnection;0;5;20;2
|
||
|
|
WireConnection;0;7;26;0
|
||
|
|
WireConnection;0;10;3;4
|
||
|
|
ASEEND*/
|
||
|
|
//CHKSM=F44984A74C59FF528675147FED8775477BFCC23B
|