您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 

74423 行
3.6 MiB

%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!48 &4869196
Shader:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Dissolve
m_Script: "Shader \"Graph/GlowMud\" \n{\n\tProperties \n\t{\n\t\tTextureProperty(\"\",
2D) = \"white\" {}\n\n\t}\t\n\t\n\tSubShader \n\t{\n\t\tTags {\r\n\t\t\t\"RenderType\"=\"Opaque\"\r\n\t\t\t\"Queue\"=\"Geometry\"\r\n\t\t}\r\n\n\t\tBlend
One Zero\r\n\n\t\tCull Back\r\n\n\t\tZTest LEqual\r\n\n\t\tZWrite On\r\n\n\n\t\tLOD
200\n\t\t\n\t\t\n\t// ------------------------------------------------------------\n\t//
Surface shader code generated out of a CGPROGRAM block:\n\t\n\n\t// ---- forward
rendering base pass:\n\tPass {\n\t\tName \"FORWARD\"\n\t\tTags { \"LightMode\"
= \"ForwardBase\" }\n\nGpuProgramID 49503\nTags { \"ShadowSupport\" = \"True\"
}\nProgram \"vp\" {}\nProgram \"fp\" {}\n\n#LINE 269\n\n\n}\n\n\t// ---- forward
rendering additive lights pass:\n\tPass {\n\t\tName \"FORWARD\"\n\t\tTags { \"LightMode\"
= \"ForwardAdd\" }\n\t\tZWrite Off Blend One One\n\nGpuProgramID 88193\nProgram
\"vp\" {}\nProgram \"fp\" {}\n\n#LINE 195\n\n\n}\n\n\t// ---- deferred shading
pass:\n\tPass {\n\t\tName \"DEFERRED\"\n\t\tTags { \"LightMode\" = \"Deferred\"
}\n\nGpuProgramID 170535\nProgram \"vp\" {}\nProgram \"fp\" {}\n\n#LINE 262\n\n\n}\n\n\t//
---- meta information extraction pass:\n\tPass {\n\t\tName \"Meta\"\n\t\tTags
{ \"LightMode\" = \"Meta\" }\n\t\tCull Off\n\nGpuProgramID 225368\nProgram \"vp\"
{}\nProgram \"fp\" {}\n\n#LINE 169\n\n\n}\n\n\t// ---- end of surface shader generated
code\n\n#LINE 105\n\n\t} \n\tFallBack \"Diffuse\"\n}\n"
m_PathName:
decompressedSize: 0
m_SubProgramBlob:
m_Dependencies:
- {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 6, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderIsBaked: 0
errors:
- message: NaN and infinity literals not allowed by shader model
messageDetails: 'Compiling Fragment program
Platform defines: UNITY_ENABLE_REFLECTION_BUFFERS UNITY_TEXTURE_ALPHASPLIT_ALLOWED'
file: UnityMetaPass.cginc
compilerPlatform: 1
line: 68
warning: 0
programError: 1
- message: floating point division by zero
messageDetails: 'Compiling Fragment program
Platform defines: UNITY_ENABLE_REFLECTION_BUFFERS UNITY_TEXTURE_ALPHASPLIT_ALLOWED'
file: UnityCG.cginc
compilerPlatform: 1
line: 408
warning: 1
programError: 1
m_DefaultTextures:
TextureProperty: {fileID: 2800000, guid: 28bdf1ba8c076ef4e910b59cc1baf342, type: 3}
m_CompileInfo:
m_Snippets:
138:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
681:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_8460_Output
= AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
693:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_8270_Output;\r\n\t\t\to.Occlusion = Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
1166:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
1853:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
3495:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_8540_Uniform, Texture_8510);\r\n\t\t\thalf V1Node_8542_Uniform
= 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
4034:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
4156:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDBASE\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (half4 (1,1,1,1), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh
: TEXCOORD3; // SH\n #endif\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n
\ #if SHADER_TARGET >= 30\n float4 lmap : TEXCOORD6;\n #endif\n};\n#endif\n//
with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n float4 lmap : TEXCOORD3;\n SHADOW_COORDS(4)\n
\ UNITY_FOG_COORDS(5)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n #ifndef DYNAMICLIGHTMAP_OFF\n
\ o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n
\ #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #endif\n\n // SH/ambient and vertex lights\n
\ #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n
\ // Approximated illumination from non-important point lights\n #ifdef
VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
4427:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V1Node_22904, half4 (1,1,1,1), AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
4649:
m_Code: "#line 38 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation data\n//
no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n
\ float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2
: TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n
\ half3 sh : TEXCOORD4; // SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n
\ #if SHADER_TARGET >= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n//
with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
6134:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
6554:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
6601:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
8249:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
8699:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8384_Output
= tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Emission = MultiplyNode_8404_Output;\r\n\t\t\to.Metallic
= Texture_8408_Output;\r\n\t\t\to.Smoothness = SplatNode_8420_Output;\r\n\t\t\to.Occlusion
= Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
10373:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_55000_Uniform = 0;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_55000_Uniform, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
11832:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
12755:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
13340:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D
Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (TextureProperty, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
14428:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8524 = tex2D
(TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8546_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf SubtractNode_8516_Output
= unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output = pow
(SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output =
unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n
\ float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD3; // SH\n #endif\n
\ SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD6;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n
\ float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2; // meshUV0\n
\ float4 lmap : TEXCOORD3;\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n
\ #ifdef DIRLIGHTMAP_COMBINED\n fixed3 tSpace0 : TEXCOORD6;\n fixed3 tSpace1
: TEXCOORD7;\n fixed3 tSpace2 : TEXCOORD8;\n #endif\n};\n#endif\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n #if !defined(LIGHTMAP_OFF) && defined(DIRLIGHTMAP_COMBINED)\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n #endif\n #if !defined(LIGHTMAP_OFF)
&& defined(DIRLIGHTMAP_COMBINED)\n o.tSpace0 = float4(worldTangent.x, worldBinormal.x,
worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y, worldBinormal.y,
worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z, worldBinormal.z,
worldNormal.z, worldPos.z);\n #endif\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n #endif\n #ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #endif\n\n // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if
UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n // Approximated illumination
from non-important point lights\n #ifdef VERTEXLIGHT_ON\n o.sh
+= Shade4PointLights (\n unity_4LightPosX0, unity_4LightPosY0,
unity_4LightPosZ0,\n unity_LightColor[0].rgb, unity_LightColor[1].rgb,
unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n unity_4LightAtten0,
worldPos, worldNormal);\n #endif\n o.sh = ShadeSHPerVertex (worldNormal,
o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); //
pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n\n //
Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // realtime lighting: call lighting function\n c += LightingStandard
(o, worldViewDir, gi);\n c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
14643:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8306;\r\n\t\tsampler2D Texture_8310;\r\n\t\tsampler2D
Texture_8308;\r\n\t\tsampler2D Texture_8284;\r\n\t\tsampler2D Texture_8312;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8320_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8318_Output
= unity_multiply_half (UV_8320_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8310_Output
= half4(UnpackNormal(tex2D (Texture_8310, MultiplyNode_8318_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8310_Output;\r\n\t\t\tfloat4 Texture_8306_Output
= tex2D (Texture_8306, MultiplyNode_8318_Output.xy);\r\n\t\t\tfloat4 Texture_8308_Output
= tex2D (Texture_8308, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 MultiplyNode_8316_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8284_Output
= tex2D (Texture_8284, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 SubtractNode_8296_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8284_Output);\r\n\t\t\thalf4
V4Node_8288 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8298 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8294_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8300_Output = unity_absolute_half (SplatNode_8294_Output);\r\n\t\t\thalf4
LerpNode_8302_Output = unity_lerp_half (V4Node_8288, V4Node_8298, AbsoluteNode_8300_Output);\r\n\t\t\thalf4
SplatNode_8290_Output = LerpNode_8302_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8286_Output
= pow (SubtractNode_8296_Output, SplatNode_8290_Output);\r\n\t\t\thalf4
MultiplyNode_8304_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_8316_Output,
PowerNode_8286_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_15504_Output
= Texture_8308_Output.wwww;\r\n\t\t\tfloat4 Texture_8312_Output = tex2D
(Texture_8312, MultiplyNode_8318_Output.xy);\r\n\t\t\to.Albedo = Texture_8306_Output;\r\n\t\t\to.Emission
= MultiplyNode_8304_Output;\r\n\t\t\to.Smoothness = SplatNode_15504_Output;\r\n\t\t\to.Occlusion
= Texture_8312_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
17725:
m_Code: "#line 36 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 26 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8232;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 ColorNode_74006 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8232_Output = tex2D
(Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Emission = MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n
\ float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD3; // SH\n #endif\n
\ SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD6;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n
\ float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2; // meshUV0\n
\ float4 lmap : TEXCOORD3;\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n
\ #ifdef DIRLIGHTMAP_COMBINED\n fixed3 tSpace0 : TEXCOORD6;\n fixed3 tSpace1
: TEXCOORD7;\n fixed3 tSpace2 : TEXCOORD8;\n #endif\n};\n#endif\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n #if !defined(LIGHTMAP_OFF) && defined(DIRLIGHTMAP_COMBINED)\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n #endif\n #if !defined(LIGHTMAP_OFF)
&& defined(DIRLIGHTMAP_COMBINED)\n o.tSpace0 = float4(worldTangent.x, worldBinormal.x,
worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y, worldBinormal.y,
worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z, worldBinormal.z,
worldNormal.z, worldPos.z);\n #endif\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n #endif\n #ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #endif\n\n // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if
UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n // Approximated illumination
from non-important point lights\n #ifdef VERTEXLIGHT_ON\n o.sh
+= Shade4PointLights (\n unity_4LightPosX0, unity_4LightPosY0,
unity_4LightPosZ0,\n unity_LightColor[0].rgb, unity_LightColor[1].rgb,
unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n unity_4LightAtten0,
worldPos, worldNormal);\n #endif\n o.sh = ShadeSHPerVertex (worldNormal,
o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); //
pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n\n //
Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // realtime lighting: call lighting function\n c += LightingStandard
(o, worldViewDir, gi);\n c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
18768:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
19094:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
19599:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8406_Output
= tex2D (TextureProperty, MultiplyNode_8412_Output.xy);\r\n\t\t\tfloat4
Texture_8384_Output = tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4
SubtractNode_8396_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = Texture_8406_Output;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
19966:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
20449:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Occlusion = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
21027:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: no\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
TextureProperty;\r\n\t\tfloat4 TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Metallic
= Texture_8256_Output;\r\n\t\t\to.Smoothness = SplatNode_480504_Output;\r\n\t\t\to.Occlusion
= Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
22459:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.a);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
27565:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D
Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.89, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Emission
= MultiplyNode_8672_Output;\r\n\t\t\to.Metallic = V4Node_8686;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
27700:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_1216600;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\tfloat4 Texture_1216600_Output = tex2D (Texture_1216600,
IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output = unity_subtract_half
(half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4 V4Node_1233532
= half4 (0, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_1718040_Output
= unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4 LerpNode_1738404_Output
= unity_lerp_half (V4Node_1233532, V4Node_1624204, V4Node_1624204);\r\n\t\t\thalf4
SplatNode_1234162_Output = LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4
PowerNode_1218400_Output = pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\to.Emission
= PowerNode_1218400_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos
: TEXCOORD1;\n half4 custompack0 : TEXCOORD2; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n
\ half3 sh : TEXCOORD3; // SH\n #endif\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n
\ #if SHADER_TARGET >= 30\n float4 lmap : TEXCOORD6;\n #endif\n};\n#endif\n//
with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n
\ half4 custompack0 : TEXCOORD2; // meshUV0\n float4 lmap : TEXCOORD3;\n
\ SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n #ifdef DIRLIGHTMAP_COMBINED\n
\ fixed3 tSpace0 : TEXCOORD6;\n fixed3 tSpace1 : TEXCOORD7;\n fixed3 tSpace2
: TEXCOORD8;\n #endif\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n #if !defined(LIGHTMAP_OFF) && defined(DIRLIGHTMAP_COMBINED)\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n #endif\n #if !defined(LIGHTMAP_OFF)
&& defined(DIRLIGHTMAP_COMBINED)\n o.tSpace0 = float4(worldTangent.x, worldBinormal.x,
worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y, worldBinormal.y,
worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z, worldBinormal.z,
worldNormal.z, worldPos.z);\n #endif\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n #endif\n #ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #endif\n\n // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if
UNITY_SHOULD_SAMPLE_SH\n #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh
= 0;\n #elif (SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ // Add approximated illumination from non-important point lights\n
\ #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n #endif\n
\ #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n
\ fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n
\ fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir
= normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n\n //
Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // realtime lighting: call lighting function\n c += LightingStandard
(o, worldViewDir, gi);\n c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
27849:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDBASE\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 V4Node_8484
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8478_Output = unity_multiply_half
(V4Node_8484, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output = half4(UnpackNormal(tex2D
(Texture_8476, MultiplyNode_8478_Output.xy)), 0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4
Texture_8472_Output = tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh
: TEXCOORD3; // SH\n #endif\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n
\ #if SHADER_TARGET >= 30\n float4 lmap : TEXCOORD6;\n #endif\n};\n#endif\n//
with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n float4 lmap : TEXCOORD3;\n SHADOW_COORDS(4)\n
\ UNITY_FOG_COORDS(5)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n #ifndef DYNAMICLIGHTMAP_OFF\n
\ o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n
\ #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #endif\n\n // SH/ambient and vertex lights\n
\ #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n
\ // Approximated illumination from non-important point lights\n #ifdef
VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
28382:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
30127:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
32929:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, UV_8480_UV);\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
34593:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh = 0;\n #elif
(SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ // Add approximated illumination from non-important point lights\n
\ #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n #endif\n
\ #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
34989:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
35493:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_2255998
= half4 (0.47, 0, 0, 0);\r\n\t\t\tfloat4 Texture_2161588_Output = tex2D
(Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Smoothness
= V4Node_2255998;\r\n\t\t\to.Occlusion = Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh = 0;\n #elif
(SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ // Add approximated illumination from non-important point lights\n
\ #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n #endif\n
\ #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
35912:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
36552:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
37194:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
39280:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh = 0;\n #elif
(SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ // Add approximated illumination from non-important point lights\n
\ #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n #endif\n
\ #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
40591:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
41054:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
41345:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
43720:
m_Code: "#line 38 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
43912:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
44839:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDBASE\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8570_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8538_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8530_Output
= pow (SubtractNode_8538_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8544_Output
= unity_multiply_half (AbsoluteNode_8570_Output, PowerNode_8530_Output);\r\n\t\t\to.Emission
= MultiplyNode_8544_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos
: TEXCOORD1;\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD2; // SH\n
\ #endif\n SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD5;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n float4 lmap : TEXCOORD2;\n
\ SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n #ifdef DIRLIGHTMAP_COMBINED\n
\ fixed3 tSpace0 : TEXCOORD5;\n fixed3 tSpace1 : TEXCOORD6;\n fixed3 tSpace2
: TEXCOORD7;\n #endif\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ #if !defined(LIGHTMAP_OFF) && defined(DIRLIGHTMAP_COMBINED)\n fixed3
worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n #endif\n #if !defined(LIGHTMAP_OFF)
&& defined(DIRLIGHTMAP_COMBINED)\n o.tSpace0 = float4(worldTangent.x, worldBinormal.x,
worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y, worldBinormal.y,
worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z, worldBinormal.z,
worldNormal.z, worldPos.z);\n #endif\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n #endif\n #ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #endif\n\n // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if
UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n // Approximated illumination
from non-important point lights\n #ifdef VERTEXLIGHT_ON\n o.sh
+= Shade4PointLights (\n unity_4LightPosX0, unity_4LightPosY0,
unity_4LightPosZ0,\n unity_LightColor[0].rgb, unity_LightColor[1].rgb,
unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n unity_4LightAtten0,
worldPos, worldNormal);\n #endif\n o.sh = ShadeSHPerVertex (worldNormal,
o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); //
pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n\n //
Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // realtime lighting: call lighting function\n c += LightingStandard
(o, worldViewDir, gi);\n c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
44909:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, half4 (1,1,1,1));\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
46855:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.r);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
47402:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D
Texture_589974;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
49053:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDBASE\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos
: TEXCOORD1;\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD2; // SH\n
\ #endif\n SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD5;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n float4 lmap : TEXCOORD2;\n
\ SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n #ifdef DIRLIGHTMAP_COMBINED\n
\ fixed3 tSpace0 : TEXCOORD5;\n fixed3 tSpace1 : TEXCOORD6;\n fixed3 tSpace2
: TEXCOORD7;\n #endif\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ #if !defined(LIGHTMAP_OFF) && defined(DIRLIGHTMAP_COMBINED)\n fixed3
worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n #endif\n #if !defined(LIGHTMAP_OFF)
&& defined(DIRLIGHTMAP_COMBINED)\n o.tSpace0 = float4(worldTangent.x, worldBinormal.x,
worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y, worldBinormal.y,
worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z, worldBinormal.z,
worldNormal.z, worldPos.z);\n #endif\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n #endif\n #ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #endif\n\n // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if
UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n // Approximated illumination
from non-important point lights\n #ifdef VERTEXLIGHT_ON\n o.sh
+= Shade4PointLights (\n unity_4LightPosX0, unity_4LightPosY0,
unity_4LightPosZ0,\n unity_LightColor[0].rgb, unity_LightColor[1].rgb,
unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n unity_4LightAtten0,
worldPos, worldNormal);\n #endif\n o.sh = ShadeSHPerVertex (worldNormal,
o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); //
pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n\n //
Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // realtime lighting: call lighting function\n c += LightingStandard
(o, worldViewDir, gi);\n c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
49503:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
49708:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
50736:
m_Code: "#pragma vertex vert\n#pragma fragment frag\n#include \"UnityShaderVariables.cginc\"\n#pragma
multi_compile_fog\n#include \"UnityCG.cginc\"\n#define USING_FOG (defined(FOG_LINEAR)
|| defined(FOG_EXP) || defined(FOG_EXP2))\n\n// ES2.0/WebGL/3DS can not
do loops with non-constant-expression iteration counts :(\n#if defined(SHADER_API_GLES)\n
\ #define LIGHT_LOOP_LIMIT 8\n#elif defined(SHADER_API_N3DS)\n #define
LIGHT_LOOP_LIMIT 4\n#else\n #define LIGHT_LOOP_LIMIT unity_VertexLightParams.x\n#endif\n#define
ENABLE_SPECULAR (!defined(SHADER_API_N3DS))\n\n// Compile specialized variants
for when positional (point/spot) and spot lights are present\n#pragma multi_compile
__ POINT SPOT\n\n// Compute illumination from one light, given attenuation\nhalf3
computeLighting (int idx, half3 dirToLight, half3 eyeNormal, half3 viewDir,
half4 diffuseColor, half shininess, half atten, inout half3 specColor) {\n
\ half NdotL = max(dot(eyeNormal, dirToLight), 0.0);\n // diffuse\n half3
color = NdotL * diffuseColor.rgb * unity_LightColor[idx].rgb;\n return
color * atten;\n}\n\n// Compute attenuation & illumination from one light\nhalf3
computeOneLight(int idx, float3 eyePosition, half3 eyeNormal, half3 viewDir,
half4 diffuseColor, half shininess, inout half3 specColor) {\n float3 dirToLight
= unity_LightPosition[idx].xyz;\n half att = 1.0;\n #if defined(POINT)
|| defined(SPOT)\n dirToLight -= eyePosition * unity_LightPosition[idx].w;\n
\ // distance attenuation\n float distSqr = dot(dirToLight, dirToLight);\n
\ att /= (1.0 + unity_LightAtten[idx].z * distSqr);\n if (unity_LightPosition[idx].w
!= 0 && distSqr > unity_LightAtten[idx].w) att = 0.0; // set to 0 if outside
of range\n dirToLight *= rsqrt(distSqr);\n #if defined(SPOT)\n //
spot angle attenuation\n half rho = max(dot(dirToLight, unity_SpotDirection[idx].xyz),
0.0);\n half spotAtt = (rho - unity_LightAtten[idx].x) * unity_LightAtten[idx].y;\n
\ att *= saturate(spotAtt);\n #endif\n #endif\n att *= 0.5; //
passed in light colors are 2x brighter than what used to be in FFP\n return
min (computeLighting (idx, dirToLight, eyeNormal, viewDir, diffuseColor,
shininess, att, specColor), 1.0);\n}\n\n// uniforms\nhalf4 _Color;\nint4
unity_VertexLightParams; // x: light count, y: zero, z: one (y/z needed
by d3d9 vs loop instruction)\nfloat4 _Dummy_ST;\n\n// vertex shader input
data\nstruct appdata {\n float3 pos : POSITION;\n float3 normal : NORMAL;\n
\ float3 uv0 : TEXCOORD0;\n};\n\n// vertex-to-fragment interpolators\nstruct
v2f {\n fixed4 color : COLOR0;\n float2 uv0 : TEXCOORD0;\n #if USING_FOG\n
\ fixed fog : TEXCOORD1;\n #endif\n float4 pos : SV_POSITION;\n};\n\n//
vertex shader\nv2f vert (appdata IN) {\n v2f o;\n half4 color = half4(0,0,0,1.1);\n
\ float3 eyePos = mul (UNITY_MATRIX_MV, float4(IN.pos,1)).xyz;\n half3
eyeNormal = normalize (mul ((float3x3)UNITY_MATRIX_IT_MV, IN.normal).xyz);\n
\ half3 viewDir = 0.0;\n // lighting\n half3 lcolor = half4(0,0,0,1).rgb
+ _Color.rgb * glstate_lightmodel_ambient.rgb;\n half3 specColor = 0.0;\n
\ half shininess = 0 * 128.0;\n for (int il = 0; il < LIGHT_LOOP_LIMIT;
++il) {\n lcolor += computeOneLight(il, eyePos, eyeNormal, viewDir, _Color,
shininess, specColor);\n }\n color.rgb = lcolor.rgb;\n color.a = _Color.a;\n
\ o.color = saturate(color);\n // compute texture coordinates\n o.uv0
= IN.uv0.xy * _Dummy_ST.xy + _Dummy_ST.zw;\n // fog\n #if USING_FOG\n
\ float fogCoord = length(eyePos.xyz); // radial fog distance\n UNITY_CALC_FOG_FACTOR(fogCoord);\n
\ o.fog = saturate(unityFogFactor);\n #endif\n // transform position\n
\ o.pos = mul(UNITY_MATRIX_MVP, float4(IN.pos,1));\n return o;\n}\n\n//
textures\nsampler2D _Dummy; // not in shader properties, assuming 2D\n\n//
fragment shader\nfixed4 frag (v2f IN) : SV_Target {\n fixed4 col;\n fixed4
tex, tmp0, tmp1, tmp2;\n // SetTexture #0\n tex = tex2D (_Dummy, IN.uv0.xy);\n
\ col.rgb = IN.color;\n col *= 2;\n col.a = IN.color.a;\n // fog\n #if
USING_FOG\n col.rgb = lerp (unity_FogColor.rgb, col.rgb, IN.fog);\n #endif\n
\ return col;\n}\n\n// texenvs\n//! TexEnv0: 02030000 01070004 [_Dummy]\n"
m_AssetPath:
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - _
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
- - _
- POINT
- SPOT
m_VariantsUser1:
- - _
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
- - _
- POINT
- SPOT
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 0
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2: []
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR POINT SPOT
m_BuiltinKeywords:
51937:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
53121:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\thalf4 ColorNode_131414
= half4 (0, 0.2551723, 1, 0);\r\n\t\t\tfloat4 Texture_8384_Output = tex2D
(Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = ColorNode_131414;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
54255:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_2179414;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (Texture_2179414, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
54284:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
54797:
m_Code: "#line 38 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half
(half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
ColorNode_1215284 = half4 (1, 0.5172414, 0, 1);\r\n\t\t\tfloat4 Texture_1216600_Output
= tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (ColorNode_1215284,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh = 0;\n #elif
(SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ // Add approximated illumination from non-important point lights\n
\ #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n unity_4LightPosX0,
unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n #endif\n
\ #endif // LIGHTMAP_OFF\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
57765:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_57620_Output
= unity_absolute_half (_SinTime);\r\n\t\t\tfloat4 Texture_8450_Output =
tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SubtractNode_8462_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (AbsoluteNode_57620_Output,
PowerNode_8452_Output);\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474,
MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4
Texture_8488_Output = tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo
= Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
57847:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half unity_absolute_half (half
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half unity_lerp_half (half first, half second, half s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf AbsoluteNode_8518_Output
= unity_absolute_half (1);\r\n\t\t\thalf LerpNode_8520_Output = unity_lerp_half
(V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
62147:
m_Code: "#line 40 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
62510:
m_Code: "#line 35 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct v2f_surf {\n float4
pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; // SH\n #endif\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET >= 30\n float4
lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n\n // compute lighting & shadowing
factor\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI gi;\n
\ UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular
= 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color = _LightColor0.rgb;\n
\ gi.light.dir = lightDir;\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n #endif\n // Call GI (lightmaps/SH/reflections) lighting
function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // realtime lighting:
call lighting function\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.rgb += o.Emission;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n
\ UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
65208:
m_Code: "#line 39 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdbase\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDBASE\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.6, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\n// no lightmaps:\n#ifdef LIGHTMAP_OFF\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4;
// SH\n #endif\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n #if SHADER_TARGET
>= 30\n float4 lmap : TEXCOORD7;\n #endif\n};\n#endif\n// with lightmaps:\n#ifndef
LIGHTMAP_OFF\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0
: TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n float4 lmap : TEXCOORD4;\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n#endif\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ #ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n #endif\n #ifndef LIGHTMAP_OFF\n o.lmap.xy
= v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n #endif\n\n
\ // SH/ambient and vertex lights\n #ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ o.sh = 0;\n // Approximated illumination from non-important point
lights\n #ifdef VERTEXLIGHT_ON\n o.sh += Shade4PointLights (\n
\ unity_4LightPosX0, unity_4LightPosY0, unity_4LightPosZ0,\n unity_LightColor[0].rgb,
unity_LightColor[1].rgb, unity_LightColor[2].rgb, unity_LightColor[3].rgb,\n
\ unity_4LightAtten0, worldPos, worldNormal);\n #endif\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n #endif // LIGHTMAP_OFF\n\n
\ TRANSFER_SHADOW(o); // pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n\n // compute lighting & shadowing factor\n
\ UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n fixed4 c = 0;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n\n
\ // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandardSpecular_GI(o,
giInput, gi);\n\n // realtime lighting: call lighting function\n c +=
LightingStandardSpecular (o, worldViewDir, gi);\n c.rgb += o.Emission;\n
\ UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- VERTEXLIGHT_ON
m_VariantsBuiltin1:
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_OFF
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- SHADOWS_SCREEN
- SHADOWS_NATIVE
- - DIRECTIONAL
- LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- SHADOWS_SCREEN
- SHADOWS_NATIVE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON LIGHTMAP_OFF LIGHTMAP_ON SHADOWS_NATIVE
SHADOWS_OFF SHADOWS_SCREEN VERTEXLIGHT_ON
65859:
m_Code: "#line 279 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half
(half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
ColorNode_1215284 = half4 (1, 0.5172414, 0, 1);\r\n\t\t\tfloat4 Texture_1216600_Output
= tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (ColorNode_1215284,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
65935:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.r);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
67948:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
68875:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
68953:
m_Code: "#line 284 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D
Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.89, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Emission
= MultiplyNode_8672_Output;\r\n\t\t\to.Metallic = V4Node_8686;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
70130:
m_Code: "#line 280 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8384_Output
= tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Emission = MultiplyNode_8404_Output;\r\n\t\t\to.Metallic
= Texture_8408_Output;\r\n\t\t\to.Smoothness = SplatNode_8420_Output;\r\n\t\t\to.Occlusion
= Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
71506:
m_Code: "#line 265 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_1216600;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\tfloat4 Texture_1216600_Output = tex2D (Texture_1216600,
IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output = unity_subtract_half
(half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4 V4Node_1233532
= half4 (0, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_1718040_Output
= unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4 LerpNode_1738404_Output
= unity_lerp_half (V4Node_1233532, V4Node_1624204, V4Node_1624204);\r\n\t\t\thalf4
SplatNode_1234162_Output = LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4
PowerNode_1218400_Output = pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\to.Emission
= PowerNode_1218400_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2;
// meshUV0\n SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates to pixel
shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates to pixel
shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf
IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
75076:
m_Code: "#line 280 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_57620_Output
= unity_absolute_half (_SinTime);\r\n\t\t\tfloat4 Texture_8450_Output =
tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SubtractNode_8462_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (AbsoluteNode_57620_Output,
PowerNode_8452_Output);\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474,
MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4
Texture_8488_Output = tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo
= Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
76686:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_8540_Uniform, Texture_8510);\r\n\t\t\thalf V1Node_8542_Uniform
= 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
78035:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V1Node_22904, half4 (1,1,1,1), AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
78570:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Occlusion = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
80226:
m_Code: "#line 284 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
82967:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
83094:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
84488:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
84760:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
86623:
m_Code: "#line 255 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: no\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
TextureProperty;\r\n\t\tfloat4 TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Metallic
= Texture_8256_Output;\r\n\t\t\to.Smoothness = SplatNode_480504_Output;\r\n\t\t\to.Occlusion
= Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
87368:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8406_Output
= tex2D (TextureProperty, MultiplyNode_8412_Output.xy);\r\n\t\t\tfloat4
Texture_8384_Output = tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4
SubtractNode_8396_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = Texture_8406_Output;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
88193:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
88535:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
91401:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
92085:
m_Code: "#line 264 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
93269:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
94272:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
94851:
m_Code: "#line 281 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D
Texture_589974;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
96170:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
97317:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
97931:
m_Code: "#line 280 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
99589:
m_Code: "#line 279 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n
\ fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos
: TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n
\ UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = fixed3(worldTangent.x,
worldBinormal.x, worldNormal.x);\n o.tSpace1 = fixed3(worldTangent.y, worldBinormal.y,
worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z, worldBinormal.z, worldNormal.z);\n
\ o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n
\ fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n
\ fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir
= normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
100198:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, UV_8480_UV);\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
102742:
m_Code: "#line 249 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDADD\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8570_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8538_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8530_Output
= pow (SubtractNode_8538_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8544_Output
= unity_multiply_half (AbsoluteNode_8570_Output, PowerNode_8530_Output);\r\n\t\t\to.Emission
= MultiplyNode_8544_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n SHADOW_COORDS(2)\n UNITY_FOG_COORDS(3)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n o.worldNormal = worldNormal;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ gi.light.color *= atten;\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
103109:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
103375:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8306;\r\n\t\tsampler2D Texture_8310;\r\n\t\tsampler2D
Texture_8308;\r\n\t\tsampler2D Texture_8284;\r\n\t\tsampler2D Texture_8312;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8320_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8318_Output
= unity_multiply_half (UV_8320_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8310_Output
= half4(UnpackNormal(tex2D (Texture_8310, MultiplyNode_8318_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8310_Output;\r\n\t\t\tfloat4 Texture_8306_Output
= tex2D (Texture_8306, MultiplyNode_8318_Output.xy);\r\n\t\t\tfloat4 Texture_8308_Output
= tex2D (Texture_8308, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 MultiplyNode_8316_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8284_Output
= tex2D (Texture_8284, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 SubtractNode_8296_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8284_Output);\r\n\t\t\thalf4
V4Node_8288 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8298 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8294_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8300_Output = unity_absolute_half (SplatNode_8294_Output);\r\n\t\t\thalf4
LerpNode_8302_Output = unity_lerp_half (V4Node_8288, V4Node_8298, AbsoluteNode_8300_Output);\r\n\t\t\thalf4
SplatNode_8290_Output = LerpNode_8302_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8286_Output
= pow (SubtractNode_8296_Output, SplatNode_8290_Output);\r\n\t\t\thalf4
MultiplyNode_8304_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_8316_Output,
PowerNode_8286_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_15504_Output
= Texture_8308_Output.wwww;\r\n\t\t\tfloat4 Texture_8312_Output = tex2D
(Texture_8312, MultiplyNode_8318_Output.xy);\r\n\t\t\to.Albedo = Texture_8306_Output;\r\n\t\t\to.Emission
= MultiplyNode_8304_Output;\r\n\t\t\to.Smoothness = SplatNode_15504_Output;\r\n\t\t\to.Occlusion
= Texture_8312_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
103668:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDADD\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 V4Node_8484
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8478_Output = unity_multiply_half
(V4Node_8484, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output = half4(UnpackNormal(tex2D
(Texture_8476, MultiplyNode_8478_Output.xy)), 0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4
Texture_8472_Output = tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = fixed3(worldTangent.x,
worldBinormal.x, worldNormal.x);\n o.tSpace1 = fixed3(worldTangent.y, worldBinormal.y,
worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z, worldBinormal.z, worldNormal.z);\n
\ o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
103733:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
104137:
m_Code: "#line 249 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDADD\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n SHADOW_COORDS(2)\n UNITY_FOG_COORDS(3)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n o.worldNormal = worldNormal;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n
\ float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir =
normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n
\ gi.light.color = _LightColor0.rgb;\n gi.light.dir = lightDir;\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n #endif\n
\ gi.light.color *= atten;\n c += LightingStandard (o, worldViewDir, gi);\n
\ c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord, c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n
\ return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
106265:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
107376:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
107526:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 26 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8232;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 ColorNode_74006 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8232_Output = tex2D
(Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Emission = MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n
\ half4 custompack0 : TEXCOORD2; // meshUV0\n SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates to pixel
shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates to pixel
shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf
IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
107665:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, half4 (1,1,1,1));\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
108052:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
109929:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_55000_Uniform = 0;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_55000_Uniform, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
110469:
m_Code: "#line 265 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
110919:
m_Code: "#line 284 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_8270_Output;\r\n\t\t\to.Occlusion = Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
110980:
m_Code: "#line 269 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_FORWARDADD\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include
\"AutoLight.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (half4 (1,1,1,1), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n SHADOW_COORDS(4)\n UNITY_FOG_COORDS(5)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = fixed3(worldTangent.x,
worldBinormal.x, worldNormal.x);\n o.tSpace1 = fixed3(worldTangent.y, worldBinormal.y,
worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z, worldBinormal.z, worldNormal.z);\n
\ o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates
to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates
to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
111576:
m_Code: "#line 258 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
112668:
m_Code: "#line 261 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
114292:
m_Code: "#line 279 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
114832:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
115316:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.a);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
116778:
m_Code: "#line 285 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_2255998
= half4 (0.47, 0, 0, 0);\r\n\t\t\tfloat4 Texture_2161588_Output = tex2D
(Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Smoothness
= V4Node_2255998;\r\n\t\t\to.Occlusion = Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 52f816656dafeebcd2f4a2a9b873fb23
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
118130:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D
Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (TextureProperty, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
118703:
m_Code: "#line 279 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half unity_absolute_half (half
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half unity_lerp_half (half first, half second, half s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf AbsoluteNode_8518_Output
= unity_absolute_half (1);\r\n\t\t\thalf LerpNode_8520_Output = unity_lerp_half
(V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
118815:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
120260:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
121410:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_2179414;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (Texture_2179414, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
121827:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
123508:
m_Code: "#line 274 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
123876:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.6, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
125683:
m_Code: "#line 261 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define INTERNAL_DATA\n#define
WorldReflectionVector(data,normal) data.worldRefl\n#define WorldNormalVector(data,normal)
normal\n\n// Original surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include
\"UnityShaderVariables.cginc\"\n#line 25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8524 = tex2D
(TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8546_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf SubtractNode_8516_Output
= unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output = pow
(SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output =
unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n
\ half4 custompack0 : TEXCOORD2; // meshUV0\n SHADOW_COORDS(3)\n UNITY_FOG_COORDS(4)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n\n TRANSFER_SHADOW(o); // pass shadow coordinates to pixel
shader\n UNITY_TRANSFER_FOG(o,o.pos); // pass fog coordinates to pixel
shader\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf
IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
125894:
m_Code: "#line 283 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten, IN, worldPos)\n
\ fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n
\ worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandardSpecular (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
125931:
m_Code: "#line 279 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_8460_Output
= AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: d3f70dfc264f6a5c1bfb608281d34001
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
126555:
m_Code: "#line 282 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\thalf4 ColorNode_131414
= half4 (0, 0.2551723, 1, 0);\r\n\t\t\tfloat4 Texture_8384_Output = tex2D
(Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = ColorNode_131414;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n fixed3 tSpace0 : TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n
\ fixed3 tSpace2 : TEXCOORD2;\n float3 worldPos : TEXCOORD3;\n half4 custompack0
: TEXCOORD4; // meshUV0\n SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 673a635350d66e2c941885260b04abe5
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
128600:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma multi_compile_fog\n#pragma
multi_compile_fwdadd\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_FORWARDADD\n#include \"UnityCG.cginc\"\n#include
\"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n#include \"AutoLight.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n fixed3 tSpace0 :
TEXCOORD0;\n fixed3 tSpace1 : TEXCOORD1;\n fixed3 tSpace2 : TEXCOORD2;\n
\ float3 worldPos : TEXCOORD3;\n half4 custompack0 : TEXCOORD4; // meshUV0\n
\ SHADOW_COORDS(5)\n UNITY_FOG_COORDS(6)\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= fixed3(worldTangent.x, worldBinormal.x, worldNormal.x);\n o.tSpace1 =
fixed3(worldTangent.y, worldBinormal.y, worldNormal.y);\n o.tSpace2 = fixed3(worldTangent.z,
worldBinormal.z, worldNormal.z);\n o.worldPos = worldPos;\n\n TRANSFER_SHADOW(o);
// pass shadow coordinates to pixel shader\n UNITY_TRANSFER_FOG(o,o.pos);
// pass fog coordinates to pixel shader\n return o;\n}\n\n// fragment shader\nfixed4
frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input
surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x =
1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UNITY_LIGHT_ATTENUATION(atten,
IN, worldPos)\n fixed4 c = 0;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n #if !defined(LIGHTMAP_ON)\n gi.light.color
= _LightColor0.rgb;\n gi.light.dir = lightDir;\n gi.light.ndotl
= LambertTerm (o.Normal, gi.light.dir);\n #endif\n gi.light.color *= atten;\n
\ c += LightingStandard (o, worldViewDir, gi);\n c.a = 0.0;\n UNITY_APPLY_FOG(IN.fogCoord,
c); // apply fog\n UNITY_OPAQUE_ALPHA(c.a);\n return c;\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 07b21170726e47a1e66c744b4690681b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser1:
- - __
- FOG_LINEAR
- FOG_EXP
- FOG_EXP2
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin1:
- - POINT
- - DIRECTIONAL
- - SPOT
- - POINT_COOKIE
- - DIRECTIONAL_COOKIE
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords: FOG_EXP FOG_EXP2 FOG_LINEAR
m_BuiltinKeywords: DIRECTIONAL DIRECTIONAL_COOKIE POINT POINT_COOKIE SPOT
132810:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
134414:
m_Code: "#line 186 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
135810:
m_Code: "#line 199 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half
(half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
ColorNode_1215284 = half4 (1, 0.5172414, 0, 1);\r\n\t\t\tfloat4 Texture_1216600_Output
= tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (ColorNode_1215284,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD7;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n
\ o.sh = 0;\n #elif (SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ #endif\n#endif\n return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 2c7234fa40cfa808fb7c88dc6135c609
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
136314:
m_Code: "#line 204 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_8460_Output
= AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
137362:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_2179414;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (Texture_2179414, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
138645:
m_Code: "#line 204 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
139217:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
140643:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
140653:
m_Code: "#line 196 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// writes to per-pixel normal: YES\n//
writes to emission: YES\n// needs world space reflection vector: no\n//
needs world space normal vector: no\n// needs screen space position: no\n//
needs world space position: no\n// needs view direction: no\n// needs world
space view direction: no\n// needs world space position for lighting: YES\n//
needs world space view direction for lighting: YES\n// needs world space
view direction for lightmaps: no\n// needs vertex color: no\n// needs VFACE:
no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads from
normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 V4Node_8484
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8478_Output = unity_multiply_half
(V4Node_8484, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output = half4(UnpackNormal(tex2D
(Texture_8476, MultiplyNode_8478_Output.xy)), 0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4
Texture_8472_Output = tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD3;\n#endif\n float4 lmap : TEXCOORD4;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD5; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD5;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n float3 viewDirForLight =
UnityWorldSpaceViewDir(worldPos);\n #ifndef DIRLIGHTMAP_OFF\n o.viewDir.x
= dot(viewDirForLight, worldTangent);\n o.viewDir.y = dot(viewDirForLight,
worldBinormal);\n o.viewDir.z = dot(viewDirForLight, worldNormal);\n #endif\n#ifndef
DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw = 0;\n#endif\n#ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz
- unity_ShadowFadeCenterAndType.xyz) * unity_ShadowFadeCenterAndType.w;\n
\ o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV, v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n
\ #endif\n#else\n o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh
= 0;\n o.sh = ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n
\ return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.color.x = 1.0;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\nfixed3
originalNormal = o.Normal;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting
environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
142354:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
142402:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD7;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n
\ o.sh = 0;\n #elif (SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ #endif\n#endif\n return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 2c7234fa40cfa808fb7c88dc6135c609
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
143702:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.a);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
145454:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.6, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
146211:
m_Code: "#line 205 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8384_Output
= tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Emission = MultiplyNode_8404_Output;\r\n\t\t\to.Metallic
= Texture_8408_Output;\r\n\t\t\to.Smoothness = SplatNode_8420_Output;\r\n\t\t\to.Occlusion
= Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
146914:
m_Code: "#line 209 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
147418:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_8540_Uniform, Texture_8510);\r\n\t\t\thalf V1Node_8542_Uniform
= 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
147546:
m_Code: "#line 159 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// writes to per-pixel normal: no\n// writes
to emission: YES\n// needs world space reflection vector: no\n// needs world
space normal vector: no\n// needs screen space position: no\n// needs world
space position: no\n// needs view direction: no\n// needs world space view
direction: no\n// needs world space position for lighting: YES\n// needs
world space view direction for lighting: YES\n// needs world space view
direction for lightmaps: no\n// needs vertex color: no\n// needs VFACE:
no\n// passes tangent-to-world matrix to pixel shader: no\n// reads from
normal: YES\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8570_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8538_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8530_Output
= pow (SubtractNode_8538_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8544_Output
= unity_multiply_half (AbsoluteNode_8570_Output, PowerNode_8530_Output);\r\n\t\t\to.Emission
= MultiplyNode_8544_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n#ifndef DIRLIGHTMAP_OFF\n
\ half3 viewDir : TEXCOORD2;\n#endif\n float4 lmap : TEXCOORD3;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD4;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n o.worldNormal = worldNormal;\n float3 viewDirForLight
= UnityWorldSpaceViewDir(worldPos);\n #ifndef DIRLIGHTMAP_OFF\n o.viewDir
= viewDirForLight;\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw =
v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n
\ o.lmap.zw = 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy
* unity_LightmapST.xy + unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n
\ o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.color.x = 1.0;\n float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n
\ fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n
\ fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir
= normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n half
atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // call lighting function
to output g-buffer\n outEmission = LightingStandard_Deferred (o, worldViewDir,
gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef UNITY_HDR_ON\n
\ outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
148195:
m_Code: "#line 206 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D
Texture_589974;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
151152:
m_Code: "#line 181 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: no\n// needs world space reflection
vector: no\n// needs world space normal vector: no\n// needs screen space
position: no\n// needs world space position: no\n// needs view direction:
no\n// needs world space view direction: no\n// needs world space position
for lighting: YES\n// needs world space view direction for lighting: YES\n//
needs world space view direction for lightmaps: no\n// needs vertex color:
no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel shader:
YES\n// reads from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
TextureProperty;\r\n\t\tfloat4 TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Metallic
= Texture_8256_Output;\r\n\t\t\to.Smoothness = SplatNode_480504_Output;\r\n\t\t\to.Occlusion
= Texture_589974_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
152529:
m_Code: "#line 200 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Occlusion = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
153187:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
153808:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8306;\r\n\t\tsampler2D Texture_8310;\r\n\t\tsampler2D
Texture_8308;\r\n\t\tsampler2D Texture_8284;\r\n\t\tsampler2D Texture_8312;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8320_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8318_Output
= unity_multiply_half (UV_8320_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8310_Output
= half4(UnpackNormal(tex2D (Texture_8310, MultiplyNode_8318_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8310_Output;\r\n\t\t\tfloat4 Texture_8306_Output
= tex2D (Texture_8306, MultiplyNode_8318_Output.xy);\r\n\t\t\tfloat4 Texture_8308_Output
= tex2D (Texture_8308, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 MultiplyNode_8316_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8284_Output
= tex2D (Texture_8284, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 SubtractNode_8296_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8284_Output);\r\n\t\t\thalf4
V4Node_8288 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8298 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8294_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8300_Output = unity_absolute_half (SplatNode_8294_Output);\r\n\t\t\thalf4
LerpNode_8302_Output = unity_lerp_half (V4Node_8288, V4Node_8298, AbsoluteNode_8300_Output);\r\n\t\t\thalf4
SplatNode_8290_Output = LerpNode_8302_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8286_Output
= pow (SubtractNode_8296_Output, SplatNode_8290_Output);\r\n\t\t\thalf4
MultiplyNode_8304_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_8316_Output,
PowerNode_8286_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_15504_Output
= Texture_8308_Output.wwww;\r\n\t\t\tfloat4 Texture_8312_Output = tex2D
(Texture_8312, MultiplyNode_8318_Output.xy);\r\n\t\t\to.Albedo = Texture_8306_Output;\r\n\t\t\to.Emission
= MultiplyNode_8304_Output;\r\n\t\t\to.Smoothness = SplatNode_15504_Output;\r\n\t\t\to.Occlusion
= Texture_8312_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
154751:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
154930:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD7;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n
\ o.sh = 0;\n #elif (SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ #endif\n#endif\n return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 2c7234fa40cfa808fb7c88dc6135c609
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
155604:
m_Code: "#line 181 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: no\n// writes to emission: YES\n// needs world space reflection
vector: no\n// needs world space normal vector: no\n// needs screen space
position: no\n// needs world space position: no\n// needs view direction:
no\n// needs world space view direction: no\n// needs world space position
for lighting: YES\n// needs world space view direction for lighting: YES\n//
needs world space view direction for lightmaps: no\n// needs vertex color:
no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel shader:
no\n// reads from normal: YES\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 26
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8232;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 ColorNode_74006 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8232_Output = tex2D
(Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Emission = MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n
\ half4 custompack0 : TEXCOORD2; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD3;\n#endif\n float4 lmap : TEXCOORD4;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD5; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD5;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n
\ #ifndef DIRLIGHTMAP_OFF\n o.viewDir = viewDirForLight;\n #endif\n#ifndef
DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw = 0;\n#endif\n#ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz
- unity_ShadowFadeCenterAndType.xyz) * unity_ShadowFadeCenterAndType.w;\n
\ o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV, v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n
\ #endif\n#else\n o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh
= 0;\n o.sh = ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n
\ return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\nfixed3 originalNormal =
o.Normal;\n half atten = 1;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir = half3(0,1,0);\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n // Call GI (lightmaps/SH/reflections)
lighting function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // call lighting function
to output g-buffer\n outEmission = LightingStandard_Deferred (o, worldViewDir,
gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef UNITY_HDR_ON\n
\ outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
155950:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
156885:
m_Code: "#line 200 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
157320:
m_Code: "#line 195 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// writes to per-pixel normal: YES\n//
writes to emission: YES\n// needs world space reflection vector: no\n//
needs world space normal vector: no\n// needs screen space position: no\n//
needs world space position: no\n// needs view direction: no\n// needs world
space view direction: no\n// needs world space position for lighting: YES\n//
needs world space view direction for lighting: YES\n// needs world space
view direction for lightmaps: no\n// needs vertex color: no\n// needs VFACE:
no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads from
normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (half4 (1,1,1,1), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD3;\n#endif\n float4 lmap : TEXCOORD4;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD5; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD5;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n float3 viewDirForLight =
UnityWorldSpaceViewDir(worldPos);\n #ifndef DIRLIGHTMAP_OFF\n o.viewDir.x
= dot(viewDirForLight, worldTangent);\n o.viewDir.y = dot(viewDirForLight,
worldBinormal);\n o.viewDir.z = dot(viewDirForLight, worldNormal);\n #endif\n#ifndef
DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw = 0;\n#endif\n#ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz
- unity_ShadowFadeCenterAndType.xyz) * unity_ShadowFadeCenterAndType.w;\n
\ o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV, v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n
\ #endif\n#else\n o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh
= 0;\n o.sh = ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n
\ return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.color.x = 1.0;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w,
IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir =
normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\nfixed3
originalNormal = o.Normal;\n fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz,
o.Normal);\n worldN.y = dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz,
o.Normal);\n o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting
environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
160682:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
162373:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
164186:
m_Code: "#line 170 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: no\n// writes to emission: YES\n// needs world space reflection
vector: no\n// needs world space normal vector: no\n// needs screen space
position: no\n// needs world space position: no\n// needs view direction:
no\n// needs world space view direction: no\n// needs world space position
for lighting: YES\n// needs world space view direction for lighting: YES\n//
needs world space view direction for lightmaps: no\n// needs vertex color:
no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel shader:
no\n// reads from normal: YES\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8524 = tex2D
(TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8546_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf SubtractNode_8516_Output
= unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output = pow
(SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output =
unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n half3 worldNormal : TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n
\ half4 custompack0 : TEXCOORD2; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD3;\n#endif\n float4 lmap : TEXCOORD4;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD5; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD5;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n
\ #ifndef DIRLIGHTMAP_OFF\n o.viewDir = viewDirForLight;\n #endif\n#ifndef
DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw = 0;\n#endif\n#ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz
- unity_ShadowFadeCenterAndType.xyz) * unity_ShadowFadeCenterAndType.w;\n
\ o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV, v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n
\ #endif\n#else\n o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh
= 0;\n o.sh = ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n
\ return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\nfixed3 originalNormal =
o.Normal;\n half atten = 1;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir = half3(0,1,0);\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n // Call GI (lightmaps/SH/reflections)
lighting function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // call lighting function
to output g-buffer\n outEmission = LightingStandard_Deferred (o, worldViewDir,
gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef UNITY_HDR_ON\n
\ outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
164994:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
166324:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
167739:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
169095:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
169717:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
170335:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_55000_Uniform = 0;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_55000_Uniform, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
170535:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
171020:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
171311:
m_Code: "#line 159 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// writes to per-pixel normal: no\n// writes
to emission: YES\n// needs world space reflection vector: no\n// needs world
space normal vector: no\n// needs screen space position: no\n// needs world
space position: no\n// needs view direction: no\n// needs world space view
direction: no\n// needs world space position for lighting: YES\n// needs
world space view direction for lighting: YES\n// needs world space view
direction for lightmaps: no\n// needs vertex color: no\n// needs VFACE:
no\n// passes tangent-to-world matrix to pixel shader: no\n// reads from
normal: YES\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n#ifndef DIRLIGHTMAP_OFF\n
\ half3 viewDir : TEXCOORD2;\n#endif\n float4 lmap : TEXCOORD3;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD4; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD4;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n o.worldNormal = worldNormal;\n float3 viewDirForLight
= UnityWorldSpaceViewDir(worldPos);\n #ifndef DIRLIGHTMAP_OFF\n o.viewDir
= viewDirForLight;\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw =
v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n
\ o.lmap.zw = 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy
* unity_LightmapST.xy + unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n
\ o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.color.x = 1.0;\n float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n
\ fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n
\ fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir
= normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n o.Normal
= IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n half
atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // call lighting function
to output g-buffer\n outEmission = LightingStandard_Deferred (o, worldViewDir,
gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef UNITY_HDR_ON\n
\ outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
171371:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
172410:
m_Code: "#line 199 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
174984:
m_Code: "#line 209 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D
Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.89, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Emission
= MultiplyNode_8672_Output;\r\n\t\t\to.Metallic = V4Node_8686;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
175530:
m_Code: "#line 205 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_57620_Output
= unity_absolute_half (_SinTime);\r\n\t\t\tfloat4 Texture_8450_Output =
tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SubtractNode_8462_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (AbsoluteNode_57620_Output,
PowerNode_8452_Output);\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474,
MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4
Texture_8488_Output = tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo
= Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
175690:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D
Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (TextureProperty, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
176538:
m_Code: "#line 204 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half unity_absolute_half (half
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half unity_lerp_half (half first, half second, half s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf AbsoluteNode_8518_Output
= unity_absolute_half (1);\r\n\t\t\thalf LerpNode_8520_Output = unity_lerp_half
(V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
177535:
m_Code: "#line 189 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
177719:
m_Code: "#line 183 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
178420:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.r);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
179142:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
180436:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, UV_8480_UV);\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
180793:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
181128:
m_Code: "#line 209 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_8270_Output;\r\n\t\t\to.Occlusion = Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
181262:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V1Node_22904, half4 (1,1,1,1), AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
182419:
m_Code: "#line 202 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, half4 (1,1,1,1));\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
183242:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8406_Output
= tex2D (TextureProperty, MultiplyNode_8412_Output.xy);\r\n\t\t\tfloat4
Texture_8384_Output = tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4
SubtractNode_8396_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = Texture_8406_Output;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
186035:
m_Code: "#line 205 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
187056:
m_Code: "#line 169 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: no\n// writes to emission: YES\n// needs world space reflection
vector: no\n// needs world space normal vector: no\n// needs screen space
position: no\n// needs world space position: no\n// needs view direction:
no\n// needs world space view direction: no\n// needs world space position
for lighting: YES\n// needs world space view direction for lighting: YES\n//
needs world space view direction for lightmaps: no\n// needs vertex color:
no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel shader:
no\n// reads from normal: YES\n// 0 texcoords actually used\n#define UNITY_PASS_DEFERRED\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_1216600;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\tfloat4 Texture_1216600_Output = tex2D (Texture_1216600,
IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output = unity_subtract_half
(half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4 V4Node_1233532
= half4 (0, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_1718040_Output
= unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4 LerpNode_1738404_Output
= unity_lerp_half (V4Node_1233532, V4Node_1624204, V4Node_1624204);\r\n\t\t\thalf4
SplatNode_1234162_Output = LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4
PowerNode_1218400_Output = pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\to.Emission
= PowerNode_1218400_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n half3 worldNormal
: TEXCOORD0;\n float3 worldPos : TEXCOORD1;\n half4 custompack0 : TEXCOORD2;
// meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD3;\n#endif\n
\ float4 lmap : TEXCOORD4;\n#ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ half3 sh : TEXCOORD5; // SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n
\ float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n o.worldNormal
= worldNormal;\n float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n
\ #ifndef DIRLIGHTMAP_OFF\n o.viewDir = viewDirForLight;\n #endif\n#ifndef
DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy
+ unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw = 0;\n#endif\n#ifndef
LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;\n
\ #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz = (mul(_Object2World, v.vertex).xyz
- unity_ShadowFadeCenterAndType.xyz) * unity_ShadowFadeCenterAndType.w;\n
\ o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV, v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n
\ #endif\n#else\n o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n #if
UNITY_SAMPLE_FULL_SH_PER_PIXEL\n o.sh = 0;\n #elif (SHADER_TARGET
< 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n #else\n o.sh
= ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n #endif\n#endif\n
\ return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n fixed3 worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n
\ #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n o.Normal = IN.worldNormal;\n normalWorldVertex = IN.worldNormal;\n\n
\ // call surface function\n surf (surfIN, o);\nfixed3 originalNormal =
o.Normal;\n half atten = 1;\n\n // Setup lighting environment\n UnityGI
gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse = 0;\n
\ gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir = half3(0,1,0);\n
\ gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n // Call GI (lightmaps/SH/reflections)
lighting function\n UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput,
giInput);\n giInput.light = gi.light;\n giInput.worldPos = worldPos;\n
\ giInput.worldViewDir = worldViewDir;\n giInput.atten = atten;\n #if
defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV
= IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandard_GI(o, giInput, gi);\n\n // call lighting function
to output g-buffer\n outEmission = LightingStandard_Deferred (o, worldViewDir,
gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef UNITY_HDR_ON\n
\ outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 2c7234fa40cfa808fb7c88dc6135c609
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
189183:
m_Code: "#line 203 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 64ee6905b8bb38aaac60f097a78c8074
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
189693:
m_Code: "#line 204 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n
\ float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n
\ half3 sh : TEXCOORD6; // SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n
\ float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
190859:
m_Code: "#line 205 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_2255998
= half4 (0.47, 0, 0, 0);\r\n\t\t\tfloat4 Texture_2161588_Output = tex2D
(Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Smoothness
= V4Node_2255998;\r\n\t\t\to.Occlusion = Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD7;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n #if UNITY_SAMPLE_FULL_SH_PER_PIXEL\n
\ o.sh = 0;\n #elif (SHADER_TARGET < 30)\n o.sh = ShadeSH9 (float4(worldNormal,1.0));\n
\ #else\n o.sh = ShadeSH3Order (half4(worldNormal, 1.0));\n #endif\n
\ #endif\n#endif\n return o;\n}\n#ifdef LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4
unity_Ambient;\n\n// fragment shader\nvoid frag_surf (v2f_surf IN,\n out
half4 outDiffuse : SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n
\ out half4 outNormal : SV_Target2,\n out half4 outEmission : SV_Target3)
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n fixed3
worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y = dot(IN.tSpace1.xyz,
o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n o.Normal = worldN;\n
\ half atten = 1;\n\n // Setup lighting environment\n UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI,
gi);\n gi.indirect.diffuse = 0;\n gi.indirect.specular = 0;\n gi.light.color
= 0;\n gi.light.dir = half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal,
gi.light.dir);\n // Call GI (lightmaps/SH/reflections) lighting function\n
\ UnityGIInput giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n
\ giInput.light = gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir
= worldViewDir;\n giInput.atten = atten;\n #if defined(LIGHTMAP_ON) ||
defined(DYNAMICLIGHTMAP_ON)\n giInput.lightmapUV = IN.lmap;\n #else\n
\ giInput.lightmapUV = 0.0;\n #endif\n #if UNITY_SHOULD_SAMPLE_SH\n
\ giInput.ambient = IN.sh;\n #else\n giInput.ambient.rgb = 0.0;\n
\ #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n giInput.probeHDR[1]
= unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMin[0] = unity_SpecCube0_BoxMin; // .w holds lerp value for
blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMax[0]
= unity_SpecCube0_BoxMax;\n giInput.probePosition[0] = unity_SpecCube0_ProbePosition;\n
\ giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n giInput.boxMin[1] =
unity_SpecCube1_BoxMin;\n giInput.probePosition[1] = unity_SpecCube1_ProbePosition;\n
\ #endif\n LightingStandardSpecular_GI(o, giInput, gi);\n\n // call lighting
function to output g-buffer\n outEmission = LightingStandardSpecular_Deferred
(o, worldViewDir, gi, outDiffuse, outSpecSmoothness, outNormal);\n #ifndef
UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 2c7234fa40cfa808fb7c88dc6135c609
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
191389:
m_Code: "#line 207 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\thalf4 ColorNode_131414
= half4 (0, 0.2551723, 1, 0);\r\n\t\t\tfloat4 Texture_8384_Output = tex2D
(Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = ColorNode_131414;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef
DIRLIGHTMAP_OFF\n half3 viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef
LIGHTMAP_OFF\n #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; //
SH\n #endif\n#else\n #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos :
TEXCOORD6;\n #endif\n#endif\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
195002:
m_Code: "#line 208 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40d83e9d4284dce005e6cff9fcb1bf2c
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
195075:
m_Code: "#line 190 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma exclude_renderers nomrt\n#pragma
multi_compile_prepassfinal\n#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n// Surface
shader code generated based on:\n// vertex modifier: 'vert'\n// writes to
per-pixel normal: YES\n// writes to emission: YES\n// needs world space
reflection vector: no\n// needs world space normal vector: no\n// needs
screen space position: no\n// needs world space position: no\n// needs view
direction: no\n// needs world space view direction: no\n// needs world space
position for lighting: YES\n// needs world space view direction for lighting:
YES\n// needs world space view direction for lightmaps: no\n// needs vertex
color: no\n// needs VFACE: no\n// passes tangent-to-world matrix to pixel
shader: YES\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_DEFERRED\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n\n// vertex-to-fragment interpolation
data\nstruct v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 :
TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n
\ half4 custompack0 : TEXCOORD3; // meshUV0\n#ifndef DIRLIGHTMAP_OFF\n half3
viewDir : TEXCOORD4;\n#endif\n float4 lmap : TEXCOORD5;\n#ifdef LIGHTMAP_OFF\n
\ #if UNITY_SHOULD_SAMPLE_SH\n half3 sh : TEXCOORD6; // SH\n #endif\n#else\n
\ #ifdef DIRLIGHTMAP_OFF\n float4 lmapFadePos : TEXCOORD6;\n #endif\n#endif\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = mul (UNITY_MATRIX_MVP, v.vertex);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ float3 viewDirForLight = UnityWorldSpaceViewDir(worldPos);\n #ifndef
DIRLIGHTMAP_OFF\n o.viewDir.x = dot(viewDirForLight, worldTangent);\n o.viewDir.y
= dot(viewDirForLight, worldBinormal);\n o.viewDir.z = dot(viewDirForLight,
worldNormal);\n #endif\n#ifndef DYNAMICLIGHTMAP_OFF\n o.lmap.zw = v.texcoord2.xy
* unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;\n#else\n o.lmap.zw
= 0;\n#endif\n#ifndef LIGHTMAP_OFF\n o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy
+ unity_LightmapST.zw;\n #ifdef DIRLIGHTMAP_OFF\n o.lmapFadePos.xyz
= (mul(_Object2World, v.vertex).xyz - unity_ShadowFadeCenterAndType.xyz)
* unity_ShadowFadeCenterAndType.w;\n o.lmapFadePos.w = (-mul(UNITY_MATRIX_MV,
v.vertex).z) * (1.0 - unity_ShadowFadeCenterAndType.w);\n #endif\n#else\n
\ o.lmap.xy = 0;\n #if UNITY_SHOULD_SAMPLE_SH\n o.sh = 0;\n o.sh
= ShadeSHPerVertex (worldNormal, o.sh);\n #endif\n#endif\n return o;\n}\n#ifdef
LIGHTMAP_ON\nfloat4 unity_LightmapFade;\n#endif\nfixed4 unity_Ambient;\n\n//
fragment shader\nvoid frag_surf (v2f_surf IN,\n out half4 outDiffuse
: SV_Target0,\n out half4 outSpecSmoothness : SV_Target1,\n out half4
outNormal : SV_Target2,\n out half4 outEmission : SV_Target3) {\n //
prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n fixed3
worldViewDir = normalize(UnityWorldSpaceViewDir(worldPos));\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\nfixed3 originalNormal = o.Normal;\n
\ fixed3 worldN;\n worldN.x = dot(IN.tSpace0.xyz, o.Normal);\n worldN.y
= dot(IN.tSpace1.xyz, o.Normal);\n worldN.z = dot(IN.tSpace2.xyz, o.Normal);\n
\ o.Normal = worldN;\n half atten = 1;\n\n // Setup lighting environment\n
\ UnityGI gi;\n UNITY_INITIALIZE_OUTPUT(UnityGI, gi);\n gi.indirect.diffuse
= 0;\n gi.indirect.specular = 0;\n gi.light.color = 0;\n gi.light.dir
= half3(0,1,0);\n gi.light.ndotl = LambertTerm (o.Normal, gi.light.dir);\n
\ // Call GI (lightmaps/SH/reflections) lighting function\n UnityGIInput
giInput;\n UNITY_INITIALIZE_OUTPUT(UnityGIInput, giInput);\n giInput.light
= gi.light;\n giInput.worldPos = worldPos;\n giInput.worldViewDir = worldViewDir;\n
\ giInput.atten = atten;\n #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)\n
\ giInput.lightmapUV = IN.lmap;\n #else\n giInput.lightmapUV = 0.0;\n
\ #endif\n #if UNITY_SHOULD_SAMPLE_SH\n giInput.ambient = IN.sh;\n #else\n
\ giInput.ambient.rgb = 0.0;\n #endif\n giInput.probeHDR[0] = unity_SpecCube0_HDR;\n
\ giInput.probeHDR[1] = unity_SpecCube1_HDR;\n #if UNITY_SPECCUBE_BLENDING
|| UNITY_SPECCUBE_BOX_PROJECTION\n giInput.boxMin[0] = unity_SpecCube0_BoxMin;
// .w holds lerp value for blending\n #endif\n #if UNITY_SPECCUBE_BOX_PROJECTION\n
\ giInput.boxMax[0] = unity_SpecCube0_BoxMax;\n giInput.probePosition[0]
= unity_SpecCube0_ProbePosition;\n giInput.boxMax[1] = unity_SpecCube1_BoxMax;\n
\ giInput.boxMin[1] = unity_SpecCube1_BoxMin;\n giInput.probePosition[1]
= unity_SpecCube1_ProbePosition;\n #endif\n LightingStandard_GI(o, giInput,
gi);\n\n // call lighting function to output g-buffer\n outEmission =
LightingStandard_Deferred (o, worldViewDir, gi, outDiffuse, outSpecSmoothness,
outNormal);\n #ifndef UNITY_HDR_ON\n outEmission.rgb = exp2(-outEmission.rgb);\n
\ #endif\n UNITY_OPAQUE_ALPHA(outDiffuse.a);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294958079
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 4a5545bf6a2d7c67df2b6874992801c2
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin1:
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- HDR_LIGHT_PREPASS_OFF
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_OFF
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_COMBINED
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_OFF
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_OFF
- UNITY_HDR_ON
- - LIGHTMAP_ON
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
- UNITY_HDR_ON
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords: DIRLIGHTMAP_COMBINED DIRLIGHTMAP_OFF DIRLIGHTMAP_SEPARATE
DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON HDR_LIGHT_PREPASS_OFF LIGHTMAP_OFF
LIGHTMAP_ON UNITY_HDR_ON
196905:
m_Code: "#line 227 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_META\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float3 worldPos : TEXCOORD0;\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard
o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard o;\n #endif\n
\ o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
196968:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, half4 (1,1,1,1));\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
197646:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
199466:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
201885:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.a);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
203693:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half unity_absolute_half (half
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half unity_lerp_half (half first, half second, half s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf AbsoluteNode_8518_Output
= unity_absolute_half (1);\r\n\t\t\thalf LerpNode_8520_Output = unity_lerp_half
(V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
204192:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
204437:
m_Code: "#line 268 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Alpha = Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
206689:
m_Code: "#line 273 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8384_Output
= tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Emission = MultiplyNode_8404_Output;\r\n\t\t\to.Metallic
= Texture_8408_Output;\r\n\t\t\to.Smoothness = SplatNode_8420_Output;\r\n\t\t\to.Occlusion
= Texture_8422_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
207603:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
208963:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
210972:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_8270_Output;\r\n\t\t\to.Occlusion = Texture_8260_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
211357:
m_Code: "#line 258 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
211506:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V1Node_22904, half4 (1,1,1,1), AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
211547:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_8540_Uniform, Texture_8510);\r\n\t\t\thalf V1Node_8542_Uniform
= 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
211764:
m_Code: "#line 254 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
212101:
m_Code: "#line 273 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
213403:
m_Code: "#line 278 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_2255998
= half4 (0.47, 0, 0, 0);\r\n\t\t\tfloat4 Texture_2161588_Output = tex2D
(Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Smoothness
= V4Node_2255998;\r\n\t\t\to.Occlusion = Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 41a6a35ec8e1e9a2ee891b8f0e5a5d1b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
213454:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
214429:
m_Code: "#line 268 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf V1Node_8540_Uniform
= 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4 AbsoluteNode_8544_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 AbsoluteNode_8518_Output
= unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4 LerpNode_8520_Output
= unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform, AbsoluteNode_8518_Output);\r\n\t\t\thalf4
PowerNode_8512_Output = pow (SubtractNode_8516_Output, LerpNode_8520_Output);\r\n\t\t\thalf4
MultiplyNode_8522_Output = unity_multiply_half (AbsoluteNode_8546_Output,
PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526 = tex2D (Texture_8526_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4 Texture_8536 = tex2D (Texture_8536_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo = Texture_8524;\r\n\t\t\to.Emission
= MultiplyNode_8522_Output;\r\n\t\t\to.Metallic = Texture_8526;\r\n\t\t\to.Smoothness
= Texture_8536;\r\n\t\t\to.Occlusion = Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
215766:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
216315:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
216943:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
217787:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
218020:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (PowerNode_8452_Output, half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
219209:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
219888:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 41a6a35ec8e1e9a2ee891b8f0e5a5d1b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
222263:
m_Code: "#line 267 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
224980:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 ColorNode_895288
= half4 (1, 0, 0, 0);\r\n\t\t\thalf4 MultiplyNode_570234_Output = unity_multiply_half
(ColorNode_895288, half4 (2,2,2,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (3.6, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
225156:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
225368:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
226032:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half (half4 arg1,
half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\t\tsampler2D Texture_2161588;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
AbsoluteNode_2144720_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_1216600_Output = tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4
SubtractNode_1439548_Output = unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (AbsoluteNode_2144720_Output,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_2161588_Output
= tex2D (Texture_2161588, IN.meshUV0.xy);\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\t\t\to.Occlusion
= Texture_2161588_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 41a6a35ec8e1e9a2ee891b8f0e5a5d1b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
226628:
m_Code: "#line 274 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D
Texture_589974;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = Texture_8256_Output;\r\n\t\t\to.Smoothness
= SplatNode_480504_Output;\r\n\t\t\to.Occlusion = Texture_589974_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
226980:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
SubtractNode_8516_Output = unity_subtract_half (Texture_8510, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
229180:
m_Code: "#line 277 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D
Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.89, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Emission
= MultiplyNode_8672_Output;\r\n\t\t\to.Metallic = V4Node_8686;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
232316:
m_Code: "#line 273 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_57620_Output
= unity_absolute_half (_SinTime);\r\n\t\t\tfloat4 Texture_8450_Output =
tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SubtractNode_8462_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 SplatNode_8460_Output =
AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (AbsoluteNode_57620_Output,
PowerNode_8452_Output);\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474,
MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4 SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4
Texture_8488_Output = tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo
= Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
232532:
m_Code: "#line 249 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
26 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8232;\r\n\n\n\t\tstruct Input
\n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full
v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 ColorNode_74006 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8232_Output = tex2D
(Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\to.Emission = MultiplyNode_8252_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float3 worldPos : TEXCOORD0;\n
\ half4 custompack0 : TEXCOORD1; // meshUV0\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n return
o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard
o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard o;\n #endif\n
\ o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
233618:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D
Texture_8652;\r\n\t\tsampler2D Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (TextureProperty, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
234567:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 SplatNode_8460_Output
= _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output = unity_absolute_half
(SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output = unity_lerp_half
(V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4 SplatNode_8456_Output
= LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output = pow
(SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4 MultiplyNode_8470_Output
= unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
235396:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\tfloat4 Texture_8406_Output
= tex2D (TextureProperty, MultiplyNode_8412_Output.xy);\r\n\t\t\tfloat4
Texture_8384_Output = tex2D (Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4
SubtractNode_8396_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = Texture_8406_Output;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
236186:
m_Code: "#line 263 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_META\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (half4 (1,1,1,1), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x
= 1.0;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
240258:
m_Code: "#line 257 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8526_Uniform;\r\n\t\tsampler2D Texture_8536_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4
Texture_8526 = tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
240316:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8478_Output
= unity_multiply_half (UV_8480_UV, UV_8480_UV);\r\n\t\t\tfloat4 Texture_8476_Output
= half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
241152:
m_Code: "#line 238 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8524 = tex2D
(TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8546_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf SubtractNode_8516_Output
= unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output = pow
(SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output =
unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float3 worldPos : TEXCOORD0;\n
\ half4 custompack0 : TEXCOORD1; // meshUV0\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n o.worldPos = worldPos;\n return
o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard
o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard o;\n #endif\n
\ o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
242310:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
243236:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 AbsoluteNode_8682_Output
= unity_absolute_half (_SinTime);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (AbsoluteNode_8682_Output, half4 (2,2,2,1));\r\n\t\t\tfloat4
Texture_8652_Output = tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4
SubtractNode_8664_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (4.5,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
244146:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
245239:
m_Code: "#line 270 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\tfloat4
Texture_8510 = tex2D (Texture_8510_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, Texture_8510.r);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Occlusion
= Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
246323:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (4, 4, 4, 4);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
248446:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_2179414;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_2179414_Output
= tex2D (Texture_2179414, IN.meshUV0.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_2179414_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
250997:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
251293:
m_Code: "#line 227 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
no\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: no\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_META\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA\n#define WorldReflectionVector(data,normal) data.worldRefl\n#define
WorldNormalVector(data,normal) normal\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn
abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4 color
: COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t
\ \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4
AbsoluteNode_8570_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8538_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8530_Output
= pow (SubtractNode_8538_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8544_Output
= unity_multiply_half (AbsoluteNode_8570_Output, PowerNode_8530_Output);\r\n\t\t\to.Emission
= MultiplyNode_8544_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float3 worldPos : TEXCOORD0;\n};\n\n// vertex shader\nv2f_surf
vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x = 1.0;\n float3
worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir
= normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3 lightDir
= _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n SurfaceOutputStandard
o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard o;\n #endif\n
\ o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
251421:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8306;\r\n\t\tsampler2D Texture_8310;\r\n\t\tsampler2D
Texture_8308;\r\n\t\tsampler2D Texture_8284;\r\n\t\tsampler2D Texture_8312;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8320_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8318_Output
= unity_multiply_half (UV_8320_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8310_Output
= half4(UnpackNormal(tex2D (Texture_8310, MultiplyNode_8318_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8310_Output;\r\n\t\t\tfloat4 Texture_8306_Output
= tex2D (Texture_8306, MultiplyNode_8318_Output.xy);\r\n\t\t\tfloat4 Texture_8308_Output
= tex2D (Texture_8308, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 MultiplyNode_8316_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8284_Output
= tex2D (Texture_8284, MultiplyNode_8318_Output.xy);\r\n\t\t\thalf4 SubtractNode_8296_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8284_Output);\r\n\t\t\thalf4
V4Node_8288 = half4 (4.4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8298 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8294_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8300_Output = unity_absolute_half (SplatNode_8294_Output);\r\n\t\t\thalf4
LerpNode_8302_Output = unity_lerp_half (V4Node_8288, V4Node_8298, AbsoluteNode_8300_Output);\r\n\t\t\thalf4
SplatNode_8290_Output = LerpNode_8302_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8286_Output
= pow (SubtractNode_8296_Output, SplatNode_8290_Output);\r\n\t\t\thalf4
MultiplyNode_8304_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_8316_Output,
PowerNode_8286_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_15504_Output
= Texture_8308_Output.wwww;\r\n\t\t\tfloat4 Texture_8312_Output = tex2D
(Texture_8312, MultiplyNode_8318_Output.xy);\r\n\t\t\to.Albedo = Texture_8306_Output;\r\n\t\t\to.Emission
= MultiplyNode_8304_Output;\r\n\t\t\to.Smoothness = SplatNode_15504_Output;\r\n\t\t\to.Occlusion
= Texture_8312_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
251442:
m_Code: "#line 271 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_lerp_half (half4
first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn lerp(first, second,
s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\t\tsampler2D
Texture_8510_Uniform;\r\n\t\tsampler2D Texture_8526_Uniform;\r\n\t\tsampler2D
Texture_8536_Uniform;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
V1Node_55000_Uniform = 0;\r\n\t\t\tfloat4 Texture_8510 = tex2D (Texture_8510_Uniform,
MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4 SubtractNode_8516_Output =
unity_subtract_half (V1Node_55000_Uniform, Texture_8510);\r\n\t\t\thalf
V1Node_8540_Uniform = 6.5;\r\n\t\t\thalf V1Node_8542_Uniform = 7.27;\r\n\t\t\thalf4
AbsoluteNode_8544_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf4
AbsoluteNode_8518_Output = unity_absolute_half (AbsoluteNode_8544_Output);\r\n\t\t\thalf4
LerpNode_8520_Output = unity_lerp_half (V1Node_8540_Uniform, V1Node_8542_Uniform,
AbsoluteNode_8518_Output);\r\n\t\t\thalf4 PowerNode_8512_Output = pow (SubtractNode_8516_Output,
LerpNode_8520_Output);\r\n\t\t\thalf4 MultiplyNode_8522_Output = unity_multiply_half
(AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\tfloat4 Texture_8526
= tex2D (Texture_8526_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\tfloat4
Texture_8536 = tex2D (Texture_8536_Uniform, MultiplyNode_8530_Output.xy);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\t\t\to.Metallic
= Texture_8526;\r\n\t\t\to.Smoothness = Texture_8536;\r\n\t\t\to.Alpha =
Texture_8536.a;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
255717:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_18032 = 2;\r\n\t\t\thalf4 UV_8480_UV = IN.meshUV0;\r\n\t\t\thalf4
MultiplyNode_8478_Output = unity_multiply_half (V1Node_18032, UV_8480_UV);\r\n\t\t\tfloat4
Texture_8476_Output = half4(UnpackNormal(tex2D (Texture_8476, MultiplyNode_8478_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4 Texture_8472_Output
= tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf
V1Node_22904 = 6.5;\r\n\t\t\thalf V1Node_35368 = 7.27;\r\n\t\t\thalf4 AbsoluteNode_50360_Output
= unity_absolute_half (half4 (1,1,1,1));\r\n\t\t\thalf4 SplatNode_8460_Output
= AbsoluteNode_50360_Output.zzzz;\r\n\t\t\thalf4 AbsoluteNode_8466_Output
= unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4 LerpNode_8468_Output
= unity_lerp_half (V1Node_22904, V1Node_35368, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (_SinTime, PowerNode_8452_Output);\r\n\t\t\tfloat4
Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
256158:
m_Code: "#line 242 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: no\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: no\n// reads from normal: no\n// 0 texcoords actually used\n#define
UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA\n#define WorldReflectionVector(data,normal)
data.worldRefl\n#define WorldNormalVector(data,normal) normal\n\n// Original
surface shader snippet:\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line
25 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_1216600;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\tfloat4 Texture_1216600_Output = tex2D (Texture_1216600,
IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output = unity_subtract_half
(half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4 V4Node_1233532
= half4 (0, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4 (1, 0, 0, 0);\r\n\t\t\thalf4
SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4 AbsoluteNode_1718040_Output
= unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4 LerpNode_1738404_Output
= unity_lerp_half (V4Node_1233532, V4Node_1624204, V4Node_1624204);\r\n\t\t\thalf4
SplatNode_1234162_Output = LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4
PowerNode_1218400_Output = pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\to.Emission
= PowerNode_1218400_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float3 worldPos : TEXCOORD0;\n half4 custompack0 : TEXCOORD1;
// meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full v)
{\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ o.worldPos = worldPos;\n return o;\n}\n\n// fragment shader\nfixed4 frag_surf
(v2f_surf IN) : SV_Target {\n // prepare and unpack data\n Input surfIN;\n
\ UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0
= IN.custompack0.xyzw;\n float3 worldPos = IN.worldPos;\n #ifndef USING_DIRECTIONAL_LIGHT\n
\ fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n
\ fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 41a6a35ec8e1e9a2ee891b8f0e5a5d1b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
256600:
m_Code: "#line 276 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 ColorNode_74006
= half4 (1, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8232_Output = tex2D (Texture_8232,
MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output =
unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (ColorNode_74006,
PowerNode_8234_Output), half4 (3,3,3,3));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Smoothness
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
256687:
m_Code: "#line 264 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// writes to per-pixel normal:
YES\n// writes to emission: YES\n// needs world space reflection vector:
no\n// needs world space normal vector: no\n// needs screen space position:
no\n// needs world space position: no\n// needs view direction: no\n// needs
world space view direction: no\n// needs world space position for lighting:
YES\n// needs world space view direction for lighting: YES\n// needs world
space view direction for lightmaps: no\n// needs vertex color: no\n// needs
VFACE: no\n// passes tangent-to-world matrix to pixel shader: YES\n// reads
from normal: no\n// 0 texcoords actually used\n#define UNITY_PASS_META\n#include
\"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include \"UnityPBSLighting.cginc\"\n\n#define
INTERNAL_DATA half3 internalSurfaceTtoW0; half3 internalSurfaceTtoW1; half3
internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal) reflect
(data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard \n\t\t//#pragma glsl\n\t\t//#pragma
debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8476;\r\n\t\tsampler2D Texture_8450;\r\n\t\tsampler2D
Texture_8474;\r\n\t\tsampler2D Texture_8488;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\tfloat4
color : COLOR;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input
o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\n\t\t}\n\t \n\t\tvoid
surf (Input IN, inout SurfaceOutputStandard o) \n\t\t{\n\t\t\thalf4 V4Node_8484
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8478_Output = unity_multiply_half
(V4Node_8484, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8476_Output = half4(UnpackNormal(tex2D
(Texture_8476, MultiplyNode_8478_Output.xy)), 0);\r\n\t\t\to.Normal = Texture_8476_Output;\r\n\t\t\tfloat4
Texture_8472_Output = tex2D (TextureProperty, MultiplyNode_8478_Output.xy);\r\n\t\t\tfloat4
Texture_8450_Output = tex2D (Texture_8450, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SubtractNode_8462_Output = unity_subtract_half (half4 (1,1,1,1), Texture_8450_Output);\r\n\t\t\thalf4
V4Node_8454 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8464 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8460_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8466_Output = unity_absolute_half (SplatNode_8460_Output);\r\n\t\t\thalf4
LerpNode_8468_Output = unity_lerp_half (V4Node_8454, V4Node_8464, AbsoluteNode_8466_Output);\r\n\t\t\thalf4
SplatNode_8456_Output = LerpNode_8468_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8452_Output
= pow (SubtractNode_8462_Output, SplatNode_8456_Output);\r\n\t\t\thalf4
MultiplyNode_8470_Output = unity_multiply_half (PowerNode_8452_Output, half4
(1,1,1,1));\r\n\t\t\tfloat4 Texture_8474_Output = tex2D (Texture_8474, MultiplyNode_8478_Output.xy);\r\n\t\t\thalf4
SplatNode_8486_Output = Texture_8474_Output.wwww;\r\n\t\t\tfloat4 Texture_8488_Output
= tex2D (Texture_8488, MultiplyNode_8478_Output.xy);\r\n\t\t\to.Albedo =
Texture_8472_Output;\r\n\t\t\to.Emission = MultiplyNode_8470_Output;\r\n\t\t\to.Metallic
= Texture_8474_Output;\r\n\t\t\to.Smoothness = SplatNode_8486_Output;\r\n\t\t\to.Occlusion
= Texture_8488_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n};\n\n// vertex shader\nv2f_surf vert_surf
(appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.color.x
= 1.0;\n float3 worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n
\ #ifndef USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 40a1672670558f726ca540771e6ec445
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
257473:
m_Code: "#line 249 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: no\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
TextureProperty;\r\n\t\tfloat4 TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D
Texture_8258;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_589974;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_363984
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8264_Output = unity_multiply_half
(unity_multiply_half (UV_8266_UV, V4Node_363984), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8258_Output = half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_480504_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_589974_Output = tex2D
(Texture_589974, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Metallic
= Texture_8256_Output;\r\n\t\t\to.Smoothness = SplatNode_480504_Output;\r\n\t\t\to.Occlusion
= Texture_589974_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
257973:
m_Code: "#line 251 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 25
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8528_Uniform;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf V1Node_8538_Uniform = 2;\r\n\t\t\thalf4 UV_8532_UV
= IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8530_Output = unity_multiply_half
(V1Node_8538_Uniform, UV_8532_UV);\r\n\t\t\tfloat4 Texture_8528 = half4(UnpackNormal(tex2D
(Texture_8528_Uniform, MultiplyNode_8530_Output.xy)), 0);\r\n\t\t\to.Normal
= Texture_8528;\r\n\t\t\tfloat4 Texture_8524 = tex2D (TextureProperty, MultiplyNode_8530_Output.xy);\r\n\t\t\thalf4
AbsoluteNode_8546_Output = unity_absolute_half (_SinTime);\r\n\t\t\thalf
SubtractNode_8516_Output = unity_subtract_half (1, 1);\r\n\t\t\thalf PowerNode_8512_Output
= pow (SubtractNode_8516_Output, 1);\r\n\t\t\thalf4 MultiplyNode_8522_Output
= unity_multiply_half (AbsoluteNode_8546_Output, PowerNode_8512_Output);\r\n\t\t\to.Albedo
= Texture_8524;\r\n\t\t\to.Emission = MultiplyNode_8522_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: f0c4ec9a21f90f548d80306f033db9cb
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
258553:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8410;\r\n\t\tsampler2D Texture_8384;\r\n\t\tsampler2D
Texture_8408;\r\n\t\tsampler2D Texture_8422;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4
meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8414_UV = IN.meshUV0;\r\n\t\t\thalf4 V4Node_8418
= half4 (2, 2, 2, 2);\r\n\t\t\thalf4 MultiplyNode_8412_Output = unity_multiply_half
(unity_multiply_half (UV_8414_UV, V4Node_8418), half4 (1,1,1,1));\r\n\t\t\tfloat4
Texture_8410_Output = half4(UnpackNormal(tex2D (Texture_8410, MultiplyNode_8412_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8410_Output;\r\n\t\t\thalf4 ColorNode_131414
= half4 (0, 0.2551723, 1, 0);\r\n\t\t\tfloat4 Texture_8384_Output = tex2D
(Texture_8384, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SubtractNode_8396_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8384_Output);\r\n\t\t\thalf4
V4Node_8388 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8398 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8394_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8400_Output = unity_absolute_half (SplatNode_8394_Output);\r\n\t\t\thalf4
LerpNode_8402_Output = unity_lerp_half (V4Node_8388, V4Node_8398, AbsoluteNode_8400_Output);\r\n\t\t\thalf4
SplatNode_8390_Output = LerpNode_8402_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8386_Output
= pow (SubtractNode_8396_Output, SplatNode_8390_Output);\r\n\t\t\thalf4
MultiplyNode_8404_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8386_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8408_Output
= tex2D (Texture_8408, MultiplyNode_8412_Output.xy);\r\n\t\t\thalf4 SplatNode_8420_Output
= Texture_8408_Output.wwww;\r\n\t\t\tfloat4 Texture_8422_Output = tex2D
(Texture_8422, MultiplyNode_8412_Output.xy);\r\n\t\t\to.Albedo = ColorNode_131414;\r\n\t\t\to.Emission
= MultiplyNode_8404_Output;\r\n\t\t\to.Metallic = Texture_8408_Output;\r\n\t\t\to.Smoothness
= SplatNode_8420_Output;\r\n\t\t\to.Occlusion = Texture_8422_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n #else\n SurfaceOutputStandard
o;\n #endif\n o.Albedo = 0.0;\n o.Emission = 0.0;\n o.Alpha = 0.0;\n
\ o.Occlusion = 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n //
call surface function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
259001:
m_Code: "#line 272 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 28
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_subtract_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_absolute_half (half4 arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_multiply_half
(half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D
Texture_1980478;\r\n\t\tsampler2D Texture_2007302;\r\n\t\tsampler2D Texture_1993896;\r\n\t\tsampler2D
Texture_1216600;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\tfloat4 Texture_2007302_Output = half4(UnpackNormal(tex2D
(Texture_2007302, IN.meshUV0.xy)), 0);\r\n\t\t\to.Normal = Texture_2007302_Output;\r\n\t\t\tfloat4
Texture_1980478_Output = tex2D (Texture_1980478, IN.meshUV0.xy);\r\n\t\t\tfloat4
Texture_1993896_Output = tex2D (Texture_1993896, IN.meshUV0.xy);\r\n\t\t\thalf4
ColorNode_1215284 = half4 (1, 0.5172414, 0, 1);\r\n\t\t\tfloat4 Texture_1216600_Output
= tex2D (Texture_1216600, IN.meshUV0.xy);\r\n\t\t\thalf4 SubtractNode_1439548_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_1216600_Output);\r\n\t\t\thalf4
V4Node_1233532 = half4 (4.3, 0, 0, 0);\r\n\t\t\thalf4 V4Node_1624204 = half4
(6.6, 0, 0, 0);\r\n\t\t\thalf4 SplatNode_1296916_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_1718040_Output = unity_absolute_half (SplatNode_1296916_Output);\r\n\t\t\thalf4
LerpNode_1738404_Output = unity_lerp_half (V4Node_1233532, V4Node_1624204,
AbsoluteNode_1718040_Output);\r\n\t\t\thalf4 SplatNode_1234162_Output =
LerpNode_1738404_Output.xxxx;\r\n\t\t\thalf4 PowerNode_1218400_Output =
pow (SubtractNode_1439548_Output, SplatNode_1234162_Output);\r\n\t\t\thalf4
MultiplyNode_1923656_Output = unity_multiply_half (unity_multiply_half (ColorNode_1215284,
PowerNode_1218400_Output), half4 (1,1,1,1));\r\n\t\t\to.Albedo = Texture_1980478_Output;\r\n\t\t\to.Specular
= Texture_1993896_Output;\r\n\t\t\to.Emission = MultiplyNode_1923656_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 41a6a35ec8e1e9a2ee891b8f0e5a5d1b
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
260197:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 30
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf Standard vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D TextureProperty;\r\n\t\tfloat4
TextureProperty_ST;\r\n\t\tsampler2D Texture_8254;\r\n\t\tsampler2D Texture_8258;\r\n\t\tsampler2D
Texture_8232;\r\n\t\tsampler2D Texture_8256;\r\n\t\tsampler2D Texture_8260;\r\n\n\n\t\tstruct
Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid vert (inout
appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandard
o) \n\t\t{\n\t\t\thalf4 UV_8266_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_8264_Output
= unity_multiply_half (UV_8266_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8258_Output
= half4(UnpackNormal(tex2D (Texture_8258, MultiplyNode_8264_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8258_Output;\r\n\t\t\tfloat4 Texture_8254_Output
= tex2D (Texture_8254, MultiplyNode_8264_Output.xy);\r\n\t\t\tfloat4 Texture_8232_Output
= tex2D (Texture_8232, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SubtractNode_8244_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8232_Output);\r\n\t\t\thalf4
V4Node_8236 = half4 (6.5, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8246 = half4 (7.3,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8242_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8248_Output = unity_absolute_half (SplatNode_8242_Output);\r\n\t\t\thalf4
LerpNode_8250_Output = unity_lerp_half (V4Node_8236, V4Node_8246, AbsoluteNode_8248_Output);\r\n\t\t\thalf4
SplatNode_8238_Output = LerpNode_8250_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8234_Output
= pow (SubtractNode_8244_Output, SplatNode_8238_Output);\r\n\t\t\thalf4
MultiplyNode_8252_Output = unity_multiply_half (unity_multiply_half (_SinTime,
PowerNode_8234_Output), half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8256_Output
= tex2D (Texture_8256, MultiplyNode_8264_Output.xy);\r\n\t\t\thalf4 SplatNode_8270_Output
= Texture_8256_Output.wwww;\r\n\t\t\tfloat4 Texture_8260_Output = tex2D
(Texture_8260, MultiplyNode_8264_Output.xy);\r\n\t\t\to.Albedo = Texture_8254_Output;\r\n\t\t\to.Emission
= MultiplyNode_8252_Output;\r\n\t\t\to.Metallic = SplatNode_8270_Output;\r\n\t\t\to.Occlusion
= Texture_8260_Output;\r\n\n\t\t}\n\t\t\n#include \"UnityMetaPass.cginc\"\n\n//
vertex-to-fragment interpolation data\nstruct v2f_surf {\n float4 pos :
SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n float4 tSpace1 : TEXCOORD1;\n
\ float4 tSpace2 : TEXCOORD2;\n half4 custompack0 : TEXCOORD3; // meshUV0\n};\n\n//
vertex shader\nv2f_surf vert_surf (appdata_full v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n
\ Input customInputData;\n vert (v, customInputData);\n o.custompack0.xyzw
= customInputData.meshUV0;\n o.pos = UnityMetaVertexPosition(v.vertex,
v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST);\n
\ float3 worldPos = mul(_Object2World, v.vertex).xyz;\n fixed3 worldNormal
= UnityObjectToWorldNormal(v.normal);\n fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n
\ fixed tangentSign = v.tangent.w * unity_WorldTransformParams.w;\n fixed3
worldBinormal = cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0
= float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x);\n
\ o.tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y);\n
\ o.tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z);\n
\ return o;\n}\n\n// fragment shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target
{\n // prepare and unpack data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n
\ surfIN.meshUV0.x = 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3
worldPos = float3(IN.tSpace0.w, IN.tSpace1.w, IN.tSpace2.w);\n #ifndef
USING_DIRECTIONAL_LIGHT\n fixed3 lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n
\ #else\n fixed3 lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef
UNITY_COMPILER_HLSL\n SurfaceOutputStandard o = (SurfaceOutputStandard)0;\n
\ #else\n SurfaceOutputStandard o;\n #endif\n o.Albedo = 0.0;\n o.Emission
= 0.0;\n o.Alpha = 0.0;\n o.Occlusion = 1.0;\n fixed3 normalWorldVertex
= fixed3(0,0,1);\n\n // call surface function\n surf (surfIN, o);\n UnityMetaInput
metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput, metaIN);\n metaIN.Albedo
= o.Albedo;\n metaIN.Emission = o.Emission;\n return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
261557:
m_Code: "#line 275 \"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n//
compile directives\n#pragma vertex vert_surf\n#pragma fragment frag_surf\n#pragma
target 3.0\n#pragma glsl\n#pragma debug\n#pragma skip_variants FOG_LINEAR
FOG_EXP FOG_EXP2\n#include \"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n//
Surface shader code generated based on:\n// vertex modifier: 'vert'\n//
writes to per-pixel normal: YES\n// writes to emission: YES\n// needs world
space reflection vector: no\n// needs world space normal vector: no\n//
needs screen space position: no\n// needs world space position: no\n// needs
view direction: no\n// needs world space view direction: no\n// needs world
space position for lighting: YES\n// needs world space view direction for
lighting: YES\n// needs world space view direction for lightmaps: no\n//
needs vertex color: no\n// needs VFACE: no\n// passes tangent-to-world matrix
to pixel shader: YES\n// reads from normal: no\n// 0 texcoords actually
used\n#define UNITY_PASS_META\n#include \"UnityCG.cginc\"\n#include \"Lighting.cginc\"\n#include
\"UnityPBSLighting.cginc\"\n\n#define INTERNAL_DATA half3 internalSurfaceTtoW0;
half3 internalSurfaceTtoW1; half3 internalSurfaceTtoW2;\n#define WorldReflectionVector(data,normal)
reflect (data.worldRefl, half3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal)))\n#define WorldNormalVector(data,normal)
fixed3(dot(data.internalSurfaceTtoW0,normal), dot(data.internalSurfaceTtoW1,normal),
dot(data.internalSurfaceTtoW2,normal))\n\n// Original surface shader snippet:\n#include
\"HLSLSupport.cginc\"\n#include \"UnityShaderVariables.cginc\"\n#line 29
\"\"\n#ifdef DUMMY_PREPROCESSOR_TO_WORK_AROUND_HLSL_COMPILER_LINE_HANDLING\n#endif\n\n\t\t//#pragma
target 3.0\n\t\t//#pragma surface surf StandardSpecular vertex:vert\n\t\t//#pragma
glsl\n\t\t//#pragma debug\n\n\n\n\t\tinline half4 unity_multiply_half (half4
arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn arg1 * arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_subtract_half (half4 arg1, half4 arg2)\r\n\t\t{\r\n\t\t\treturn
arg1 - arg2;\r\n\t\t}\r\n\t\t\r\n\t\tinline half4 unity_absolute_half (half4
arg1)\r\n\t\t{\r\n\t\t\treturn abs(arg1);\r\n\t\t}\r\n\t\t\r\n\t\tinline
half4 unity_lerp_half (half4 first, half4 second, half4 s)\r\n\t\t{\r\n\t\t\treturn
lerp(first, second, s);\r\n\t\t}\r\n\t\t\r\n\n\n\t\tsampler2D Texture_8674;\r\n\t\tsampler2D
Texture_8678;\r\n\t\tsampler2D Texture_8676;\r\n\t\tsampler2D Texture_8652;\r\n\t\tsampler2D
Texture_8684;\r\n\n\n\t\tstruct Input \n\t\t{\n\t\t\thalf4 meshUV0;\r\n\n\t\t};\n\n\t\tvoid
vert (inout appdata_full v, out Input o)\n\t\t{\n\t\t\tUNITY_INITIALIZE_OUTPUT(Input,o);\n\t\t\to.meshUV0
= v.texcoord;\r\n\n\t\t}\n\t \n\t\tvoid surf (Input IN, inout SurfaceOutputStandardSpecular
o) \n\t\t{\n\t\t\thalf4 UV_709896_UV = IN.meshUV0;\r\n\t\t\thalf4 MultiplyNode_708570_Output
= unity_multiply_half (UV_709896_UV, half4 (2,2,2,2));\r\n\t\t\tfloat4 Texture_8678_Output
= half4(UnpackNormal(tex2D (Texture_8678, MultiplyNode_708570_Output.xy)),
0);\r\n\t\t\to.Normal = Texture_8678_Output;\r\n\t\t\tfloat4 Texture_8674_Output
= tex2D (Texture_8674, MultiplyNode_708570_Output.xy);\r\n\t\t\tfloat4 Texture_8676_Output
= tex2D (Texture_8676, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 MultiplyNode_570234_Output
= unity_multiply_half (_SinTime, half4 (1,1,1,1));\r\n\t\t\tfloat4 Texture_8652_Output
= tex2D (Texture_8652, MultiplyNode_708570_Output.xy);\r\n\t\t\thalf4 SubtractNode_8664_Output
= unity_subtract_half (half4 (1,1,1,1), Texture_8652_Output);\r\n\t\t\thalf4
V4Node_8656 = half4 (4, 0, 0, 0);\r\n\t\t\thalf4 V4Node_8666 = half4 (7,
0, 0, 0);\r\n\t\t\thalf4 SplatNode_8662_Output = _SinTime.zzzz;\r\n\t\t\thalf4
AbsoluteNode_8668_Output = unity_absolute_half (SplatNode_8662_Output);\r\n\t\t\thalf4
LerpNode_8670_Output = unity_lerp_half (V4Node_8656, V4Node_8666, AbsoluteNode_8668_Output);\r\n\t\t\thalf4
SplatNode_8658_Output = LerpNode_8670_Output.xxxx;\r\n\t\t\thalf4 PowerNode_8654_Output
= pow (SubtractNode_8664_Output, SplatNode_8658_Output);\r\n\t\t\thalf4
MultiplyNode_8672_Output = unity_multiply_half (unity_multiply_half (MultiplyNode_570234_Output,
PowerNode_8654_Output), half4 (1,1,1,1));\r\n\t\t\thalf4 V4Node_8686 = half4
(0.2, 0, 0, 0);\r\n\t\t\tfloat4 Texture_8684_Output = tex2D (Texture_8684,
MultiplyNode_708570_Output.xy);\r\n\t\t\to.Albedo = Texture_8674_Output;\r\n\t\t\to.Specular
= Texture_8676_Output;\r\n\t\t\to.Emission = MultiplyNode_8672_Output;\r\n\t\t\to.Smoothness
= V4Node_8686;\r\n\t\t\to.Occlusion = Texture_8684_Output;\r\n\n\t\t}\n\t\t\n#include
\"UnityMetaPass.cginc\"\n\n// vertex-to-fragment interpolation data\nstruct
v2f_surf {\n float4 pos : SV_POSITION;\n float4 tSpace0 : TEXCOORD0;\n
\ float4 tSpace1 : TEXCOORD1;\n float4 tSpace2 : TEXCOORD2;\n half4 custompack0
: TEXCOORD3; // meshUV0\n};\n\n// vertex shader\nv2f_surf vert_surf (appdata_full
v) {\n v2f_surf o;\n UNITY_INITIALIZE_OUTPUT(v2f_surf,o);\n Input customInputData;\n
\ vert (v, customInputData);\n o.custompack0.xyzw = customInputData.meshUV0;\n
\ o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy,
unity_LightmapST, unity_DynamicLightmapST);\n float3 worldPos = mul(_Object2World,
v.vertex).xyz;\n fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);\n
\ fixed3 worldTangent = UnityObjectToWorldDir(v.tangent.xyz);\n fixed tangentSign
= v.tangent.w * unity_WorldTransformParams.w;\n fixed3 worldBinormal =
cross(worldNormal, worldTangent) * tangentSign;\n o.tSpace0 = float4(worldTangent.x,
worldBinormal.x, worldNormal.x, worldPos.x);\n o.tSpace1 = float4(worldTangent.y,
worldBinormal.y, worldNormal.y, worldPos.y);\n o.tSpace2 = float4(worldTangent.z,
worldBinormal.z, worldNormal.z, worldPos.z);\n return o;\n}\n\n// fragment
shader\nfixed4 frag_surf (v2f_surf IN) : SV_Target {\n // prepare and unpack
data\n Input surfIN;\n UNITY_INITIALIZE_OUTPUT(Input,surfIN);\n surfIN.meshUV0.x
= 1.0;\n surfIN.meshUV0 = IN.custompack0.xyzw;\n float3 worldPos = float3(IN.tSpace0.w,
IN.tSpace1.w, IN.tSpace2.w);\n #ifndef USING_DIRECTIONAL_LIGHT\n fixed3
lightDir = normalize(UnityWorldSpaceLightDir(worldPos));\n #else\n fixed3
lightDir = _WorldSpaceLightPos0.xyz;\n #endif\n #ifdef UNITY_COMPILER_HLSL\n
\ SurfaceOutputStandardSpecular o = (SurfaceOutputStandardSpecular)0;\n
\ #else\n SurfaceOutputStandardSpecular o;\n #endif\n o.Albedo = 0.0;\n
\ o.Emission = 0.0;\n o.Specular = 0.0;\n o.Alpha = 0.0;\n o.Occlusion
= 1.0;\n fixed3 normalWorldVertex = fixed3(0,0,1);\n\n // call surface
function\n surf (surfIN, o);\n UnityMetaInput metaIN;\n UNITY_INITIALIZE_OUTPUT(UnityMetaInput,
metaIN);\n metaIN.Albedo = o.Albedo;\n metaIN.Emission = o.Emission;\n
\ return UnityMetaFragment(metaIN);\n}\n\n"
m_AssetPath: Assets/UnityShaderEditor/Graphs
m_PlatformMask: 4294967295
m_HardwareTierVariantsMask: 72393
m_TypesMask: 3
m_IncludesHash:
serializedVersion: 2
Hash: 95a37cad14732b342a401f91029ab0e7
m_IsGLSL: 0
m_FromOther: 0
m_VariantsUser0: []
m_VariantsUser1: []
m_VariantsUser2: []
m_VariantsUser3: []
m_VariantsUser4: []
m_VariantsUser5: []
m_VariantsBuiltin0: []
m_VariantsBuiltin1: []
m_VariantsBuiltin2: []
m_VariantsBuiltin3: []
m_VariantsBuiltin4: []
m_VariantsBuiltin5: []
m_Target: 2
m_TargetVariants0: []
m_TargetVariants1: []
m_TargetVariants2:
- SHADOWS_SOFT
- DIRLIGHTMAP_COMBINED
- DIRLIGHTMAP_SEPARATE
- DYNAMICLIGHTMAP_ON
m_TargetVariants3: []
m_TargetVariants4: []
m_TargetVariants5: []
m_NonStrippedUserKeywords:
m_BuiltinKeywords:
m_MeshComponentsFromSnippets: 187
m_HasSurfaceShaders: 1
m_HasFixedFunctionShaders: 1
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ef5b9f0785847b04983f907c7f016a36, type: 3}
m_Name: GlowMud
m_EditorClassIdentifier:
m_MaterialProperties: {fileID: 11477068}
m_MaterialOptions: {fileID: 11495838}
m_PixelGraph: {fileID: 11443428}
m_Expanded: 0
--- !u!114 &11400012
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f34a640000e664d4f8b2e0795df7fad9, type: 3}
m_Name: V4Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1037.8572
y: 715.28
width: 639.8572
height: 36.71997
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11400012}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: {x: 7.3, y: 0, z: 0, w: 0}
--- !u!114 &11400400
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 38072936174514040b3e08813a3ec4e7, type: 3}
m_Name: PixelMaster
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: Albedo
m_Name: Albedo
m_DataTypeString:
- type: 0
m_Title: Normal
m_Name: Normal
m_DataTypeString:
- type: 0
m_Title: Specular
m_Name: Specular
m_DataTypeString:
- type: 0
m_Title: Emission
m_Name: Emission
m_DataTypeString:
- type: 0
m_Title: Metallic
m_Name: Metallic
m_DataTypeString:
- type: 0
m_Title: Smoothness
m_Name: Smoothness
m_DataTypeString:
- type: 0
m_Title: Occlusion
m_Name: Occlusion
m_DataTypeString:
- type: 0
m_Title: Alpha
m_Name: Alpha
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 1055.9392
y: -22.969591
width: 310.0608
height: 443.9696
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Albedo
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Albedo
m_Node: {fileID: 11400400}
- slotName: Normal
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Normal
m_Node: {fileID: 11400400}
- slotName: Specular
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Specular
m_Node: {fileID: 11400400}
- slotName: Emission
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Emission
m_Node: {fileID: 11400400}
- slotName: Metallic
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Metallic
m_Node: {fileID: 11400400}
- slotName: Smoothness
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Smoothness
m_Node: {fileID: 11400400}
- slotName: Occlusion
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Occlusion
m_Node: {fileID: 11400400}
- slotName: Alpha
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Alpha
m_Node: {fileID: 11400400}
m_PrecisionNames:
- half
m_LightFunctionClassName: UnityEditor.MaterialGraph.PBRMetalicLightFunction
--- !u!114 &11406334
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c740b99e5a743e84d8030d697cc6d0a1, type: 3}
m_Name: SplatNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1196.1097
y: 825.244
width: 893.10974
height: 151.75598
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
defaultValue:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotValueType: 0
m_SlotName: Input
m_Node: {fileID: 11406334}
m_PrecisionNames:
- half
m_SwizzleChannel: 2
--- !u!114 &11408580
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 87c4299b09d95d64c99884296038ceeb, type: 3}
m_Name: V1Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -926.4552
y: 691.6363
width: -21.414124
height: 25.565979
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11408580}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: 7.27
--- !u!114 &11410058
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 87c4299b09d95d64c99884296038ceeb, type: 3}
m_Name: V1Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -925.4552
y: 589.6363
width: 230.58588
height: -26.434021
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11410058}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: 6.5
--- !u!114 &11411950
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4b496ffd32c22d94bb525897d152da05, type: 3}
m_Name: AbsoluteNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -928.06067
y: 823.10236
width: 738.06067
height: 145.89764
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input
m_Node: {fileID: 11411950}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11411950}
m_PrecisionNames:
- half
--- !u!114 &11414364
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1c05002dbfc8cd14cb3b544630cf1017, type: 3}
m_Name: UV
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: UV
m_Name: UV
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -2192.8857
y: -301.62698
width: 1390.8857
height: 286.62698
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11414364}
m_PrecisionNames:
- half
--- !u!114 &11415902
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5622947be2d8cd48beb2362351ddf12, type: 3}
m_Name: LerpNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
- type: 0
m_Title: Input 3
m_Name: Input3
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -597.85693
y: 693.82404
width: 527.85693
height: 71.175964
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11415902}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11415902}
- slotName: Input3
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input3
m_Node: {fileID: 11415902}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11415902}
m_PrecisionNames:
- half
--- !u!114 &11417724
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b251c305a044f49438dff356f1e7bb84, type: 3}
m_Name: SubtractNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -973.38715
y: 261.9308
width: 735.38715
height: 311.0692
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11417724}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11417724}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11417724}
m_PrecisionNames:
- half
--- !u!114 &11422894
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c740b99e5a743e84d8030d697cc6d0a1, type: 3}
m_Name: SplatNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 40.43891
y: -7.394927
width: 676.5611
height: 336.39493
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
defaultValue:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotValueType: 0
m_SlotName: Input
m_Node: {fileID: 11422894}
m_PrecisionNames:
- half
m_SwizzleChannel: 3
--- !u!114 &11428364
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f80af444cd4235c419b356216d784b57, type: 3}
m_Name: Sin Time
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Sin Time
m_Name: SinTime
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -32.66852
y: -901.0728
width: 385.73764
height: 316.7843
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: SinTime
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: SinTime
m_Node: {fileID: 11428364}
m_PrecisionNames:
- half
--- !u!114 &11434830
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 088fb5bde3ece0f4190136b3ab43f7c4, type: 3}
m_Name: MultiplyNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 425.1977
y: -656.4171
width: 0
height: 0
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11434830}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11434830}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11434830}
m_PrecisionNames:
- half
--- !u!114 &11440578
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4b496ffd32c22d94bb525897d152da05, type: 3}
m_Name: AbsoluteNode
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1446.8694
y: 827.2023
width: -129
height: 193
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input
m_Node: {fileID: 11440578}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11440578}
m_PrecisionNames:
- half
--- !u!114 &11441414
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f34a640000e664d4f8b2e0795df7fad9, type: 3}
m_Name: V4Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1039.2306
y: 598.08527
width: 641.2306
height: 21.914734
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11441414}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: {x: 6.5, y: 0, z: 0, w: 0}
--- !u!114 &11443428
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 226075d30f5b2694caa212aa3e968148, type: 3}
m_Name:
m_EditorClassIdentifier:
nodes:
- {fileID: 11400400}
- {fileID: 11461240}
- {fileID: 11470962}
- {fileID: 11498308}
- {fileID: 11417724}
- {fileID: 11411950}
- {fileID: 11415902}
- {fileID: 11445996}
- {fileID: 11445316}
- {fileID: 11480530}
- {fileID: 11472310}
- {fileID: 11468266}
- {fileID: 11414364}
- {fileID: 11482232}
- {fileID: 11459506}
- {fileID: 11458928}
- {fileID: 11410058}
- {fileID: 11408580}
- {fileID: 11440578}
- {fileID: 11450804}
edges:
- m_FromNode: {fileID: 11411950}
m_ToNode: {fileID: 11415902}
m_FromSlotName: Output
m_ToSlotName: Input3
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11468266}
m_ToNode: {fileID: 11472310}
m_FromSlotName: Output
m_ToSlotName: UV
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11468266}
m_ToNode: {fileID: 11461240}
m_FromSlotName: Output
m_ToSlotName: UV
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11468266}
m_ToNode: {fileID: 11480530}
m_FromSlotName: Output
m_ToSlotName: UV
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11468266}
m_ToNode: {fileID: 11459506}
m_FromSlotName: Output
m_ToSlotName: UV
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11417724}
m_ToNode: {fileID: 11470962}
m_FromSlotName: Output
m_ToSlotName: Input1
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11468266}
m_ToNode: {fileID: 11445316}
m_FromSlotName: Output
m_ToSlotName: UV
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11414364}
m_ToNode: {fileID: 11468266}
m_FromSlotName: UV
m_ToSlotName: Input2
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11458928}
m_ToNode: {fileID: 11468266}
m_FromSlotName: Value
m_ToSlotName: Input1
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11410058}
m_ToNode: {fileID: 11415902}
m_FromSlotName: Value
m_ToSlotName: Input1
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11408580}
m_ToNode: {fileID: 11415902}
m_FromSlotName: Value
m_ToSlotName: Input2
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11470962}
m_ToNode: {fileID: 11445996}
m_FromSlotName: Output
m_ToSlotName: Input2
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11498308}
m_ToNode: {fileID: 11440578}
m_FromSlotName: SinTime
m_ToSlotName: Input
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11482232}
m_ToNode: {fileID: 11450804}
m_FromSlotName: SinTime
m_ToSlotName: Input
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11450804}
m_ToNode: {fileID: 11445996}
m_FromSlotName: Output
m_ToSlotName: Input1
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11472310}
m_ToNode: {fileID: 11400400}
m_FromSlotName: RGBA
m_ToSlotName: Normal
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11480530}
m_ToNode: {fileID: 11400400}
m_FromSlotName: RGBA
m_ToSlotName: Metallic
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11459506}
m_ToNode: {fileID: 11400400}
m_FromSlotName: RGBA
m_ToSlotName: Smoothness
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11415902}
m_ToNode: {fileID: 11470962}
m_FromSlotName: Output
m_ToSlotName: Input2
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11440578}
m_ToNode: {fileID: 11411950}
m_FromSlotName: Output
m_ToSlotName: Input
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11459506}
m_ToNode: {fileID: 11400400}
m_FromSlotName: A
m_ToSlotName: Occlusion
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11461240}
m_ToNode: {fileID: 11417724}
m_FromSlotName: RGBA
m_ToSlotName: Input1
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11445316}
m_ToNode: {fileID: 11400400}
m_FromSlotName: RGBA
m_ToSlotName: Albedo
color: {r: 1, g: 1, b: 1, a: 1}
- m_FromNode: {fileID: 11445996}
m_ToNode: {fileID: 11400400}
m_FromSlotName: Output
m_ToSlotName: Emission
color: {r: 1, g: 1, b: 1, a: 1}
m_InvalidEdges: []
--- !u!114 &11445316
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5defdf1d05185a343bfebb2cdd827bd6, type: 3}
m_Name: Texture
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: UV
m_Name: UV
m_DataTypeString:
- type: 1
m_Title: RGBA
m_Name: RGBA
m_DataTypeString:
- type: 1
m_Title: R
m_Name: R
m_DataTypeString:
- type: 1
m_Title: G
m_Name: G
m_DataTypeString:
- type: 1
m_Title: B
m_Name: B
m_DataTypeString:
- type: 1
m_Title: A
m_Name: A
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -280.28894
y: -1093.6855
width: 733.28894
height: 920.68555
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: RGBA
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: RGBA
m_Node: {fileID: 11445316}
- slotName: R
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: R
m_Node: {fileID: 11445316}
- slotName: G
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: G
m_Node: {fileID: 11445316}
- slotName: B
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: B
m_Node: {fileID: 11445316}
- slotName: A
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: A
m_Node: {fileID: 11445316}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11445316}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 11475776}
m_DefaultTexture: {fileID: 2800000, guid: 28bdf1ba8c076ef4e910b59cc1baf342, type: 3}
m_TextureType: 0
--- !u!114 &11445996
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 088fb5bde3ece0f4190136b3ab43f7c4, type: 3}
m_Name: MultiplyNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 598.6916
y: 429.5013
width: -104.69159
height: 227.49869
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11445996}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11445996}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11445996}
m_PrecisionNames:
- half
--- !u!114 &11450804
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4b496ffd32c22d94bb525897d152da05, type: 3}
m_Name: AbsoluteNode
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 287.13074
y: 379.20224
width: 199
height: -16
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input
m_Node: {fileID: 11450804}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11450804}
m_PrecisionNames:
- half
--- !u!114 &11451638
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f34a640000e664d4f8b2e0795df7fad9, type: 3}
m_Name: V4Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -2171.0325
y: -482.41623
width: 1365.0325
height: 562.41626
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11451638}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: {x: 2, y: 2, z: 2, w: 2}
--- !u!114 &11458928
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 87c4299b09d95d64c99884296038ceeb, type: 3}
m_Name: V1Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -2194.6567
y: -403.09222
width: -91.75537
height: -128.03387
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11458928}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: 2
--- !u!114 &11459506
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5defdf1d05185a343bfebb2cdd827bd6, type: 3}
m_Name: Texture
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: UV
m_Name: UV
m_DataTypeString:
- type: 1
m_Title: RGBA
m_Name: RGBA
m_DataTypeString:
- type: 1
m_Title: R
m_Name: R
m_DataTypeString:
- type: 1
m_Title: G
m_Name: G
m_DataTypeString:
- type: 1
m_Title: B
m_Name: B
m_DataTypeString:
- type: 1
m_Title: A
m_Name: A
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -288.10104
y: 22.946762
width: 741.10095
height: 248.05312
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: RGBA
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: RGBA
m_Node: {fileID: 11459506}
- slotName: R
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: R
m_Node: {fileID: 11459506}
- slotName: G
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: G
m_Node: {fileID: 11459506}
- slotName: B
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: B
m_Node: {fileID: 11459506}
- slotName: A
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: A
m_Node: {fileID: 11459506}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11459506}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_DefaultTexture: {fileID: 2800000, guid: bf69485a601066743b2b9569dfaed908, type: 3}
m_TextureType: 0
--- !u!114 &11461240
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5defdf1d05185a343bfebb2cdd827bd6, type: 3}
m_Name: Texture
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: UV
m_Name: UV
m_DataTypeString:
- type: 1
m_Title: RGBA
m_Name: RGBA
m_DataTypeString:
- type: 1
m_Title: R
m_Name: R
m_DataTypeString:
- type: 1
m_Title: G
m_Name: G
m_DataTypeString:
- type: 1
m_Title: B
m_Name: B
m_DataTypeString:
- type: 1
m_Title: A
m_Name: A
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1369.0463
y: 284.40845
width: 994.04626
height: 214.59155
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: RGBA
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: RGBA
m_Node: {fileID: 11461240}
- slotName: R
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: R
m_Node: {fileID: 11461240}
- slotName: G
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: G
m_Node: {fileID: 11461240}
- slotName: B
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: B
m_Node: {fileID: 11461240}
- slotName: A
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: A
m_Node: {fileID: 11461240}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11461240}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_DefaultTexture: {fileID: 2800000, guid: 6e8d12f68bae2294da814f9d4c81b29a, type: 3}
m_TextureType: 0
--- !u!114 &11462926
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b793ff9211c8787428ec61378a5b39ac, type: 3}
m_Name: TextureProperty
m_EditorClassIdentifier:
m_PropertyDescription:
m_DefaultTexture: {fileID: 2800000, guid: 31f5a8611c4ed1245b18456206e798dc, type: 3}
m_DefaultTextureType: 0
--- !u!114 &11468266
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 088fb5bde3ece0f4190136b3ab43f7c4, type: 3}
m_Name: MultiplyNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1862.811
y: -372.2167
width: 1192.811
height: 453.2167
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11468266}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11468266}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11468266}
m_PrecisionNames:
- half
--- !u!114 &11470962
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b2957c4e08e061444a7444a1a03fb584, type: 3}
m_Name: PowerNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input 1
m_Name: Input1
m_DataTypeString:
- type: 0
m_Title: Input 2
m_Name: Input2
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 210.07529
y: 694.14197
width: 103.92471
height: -13.141968
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input1
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input1
m_Node: {fileID: 11470962}
- slotName: Input2
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Input2
m_Node: {fileID: 11470962}
- slotName: Output
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Output
m_Node: {fileID: 11470962}
m_PrecisionNames:
- half
--- !u!114 &11472310
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5defdf1d05185a343bfebb2cdd827bd6, type: 3}
m_Name: Texture
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: UV
m_Name: UV
m_DataTypeString:
- type: 1
m_Title: RGBA
m_Name: RGBA
m_DataTypeString:
- type: 1
m_Title: R
m_Name: R
m_DataTypeString:
- type: 1
m_Title: G
m_Name: G
m_DataTypeString:
- type: 1
m_Title: B
m_Name: B
m_DataTypeString:
- type: 1
m_Title: A
m_Name: A
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -276.83142
y: -724.366
width: 729.83154
height: 707.366
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: RGBA
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: RGBA
m_Node: {fileID: 11472310}
- slotName: R
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: R
m_Node: {fileID: 11472310}
- slotName: G
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: G
m_Node: {fileID: 11472310}
- slotName: B
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: B
m_Node: {fileID: 11472310}
- slotName: A
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: A
m_Node: {fileID: 11472310}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11472310}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_DefaultTexture: {fileID: 2800000, guid: d5649239aacf54d4e8d6f656d15d30b0, type: 3}
m_TextureType: 3
--- !u!114 &11475776
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b793ff9211c8787428ec61378a5b39ac, type: 3}
m_Name: TextureProperty
m_EditorClassIdentifier:
m_PropertyDescription:
m_DefaultTexture: {fileID: 2800000, guid: 28bdf1ba8c076ef4e910b59cc1baf342, type: 3}
m_DefaultTextureType: 0
--- !u!114 &11477068
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: cab057dbd683f5244aed9bd721e1973e, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ShaderProperties:
- {fileID: 11475776}
m_Expanded: 0
--- !u!114 &11480530
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5defdf1d05185a343bfebb2cdd827bd6, type: 3}
m_Name: Texture
m_EditorClassIdentifier:
m_Slots:
- type: 0
m_Title: UV
m_Name: UV
m_DataTypeString:
- type: 1
m_Title: RGBA
m_Name: RGBA
m_DataTypeString:
- type: 1
m_Title: R
m_Name: R
m_DataTypeString:
- type: 1
m_Title: G
m_Name: G
m_DataTypeString:
- type: 1
m_Title: B
m_Name: B
m_DataTypeString:
- type: 1
m_Title: A
m_Name: A
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -280.74634
y: -343.7022
width: 733.7466
height: 470.70218
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: RGBA
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: RGBA
m_Node: {fileID: 11480530}
- slotName: R
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: R
m_Node: {fileID: 11480530}
- slotName: G
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: G
m_Node: {fileID: 11480530}
- slotName: B
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: B
m_Node: {fileID: 11480530}
- slotName: A
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: A
m_Node: {fileID: 11480530}
- slotName: UV
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: UV
m_Node: {fileID: 11480530}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_DefaultTexture: {fileID: 2800000, guid: 335a8d4389ccf5b4087de15f28df62e4, type: 3}
m_TextureType: 0
--- !u!114 &11482232
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f80af444cd4235c419b356216d784b57, type: 3}
m_Name: Sin Time
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Sin Time
m_Name: SinTime
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: 12
y: 376
width: 302
height: 149
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: SinTime
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: SinTime
m_Node: {fileID: 11482232}
m_PrecisionNames:
- half
--- !u!114 &11483288
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 87c4299b09d95d64c99884296038ceeb, type: 3}
m_Name: V1Node
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Value
m_Name: Value
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1213.4097
y: 55.85207
width: 154.52588
height: 129.26668
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Value
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: Value
m_Node: {fileID: 11483288}
m_PrecisionNames:
- half
m_BoundProperty: {fileID: 0}
m_Value: 0
--- !u!114 &11495838
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: edd99bcf0936ee84794c384dffae5501, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SrcBlend: 0
m_DstBlend: 1
m_CullMode: 0
m_ZTest: 2
m_ZWrite: 0
m_RenderQueue: 1
m_RenderType: 0
m_ShadowPass: 0
m_FullForwardShadows: 0
m_NoAmbient: 0
m_NoVertexLights: 0
m_NoLightmaps: 0
m_NoDirLightmap: 0
m_NoForwardAdd: 0
m_ApproxView: 0
m_HalfAsView: 0
m_Expanded: 0
--- !u!114 &11497078
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c740b99e5a743e84d8030d697cc6d0a1, type: 3}
m_Name: SplatNode
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Output
m_Name: Output
m_DataTypeString:
- type: 0
m_Title: Input
m_Name: Input
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -186.0918
y: 758.19226
width: 375.09174
height: 14.807739
showEmptySlots: 1
m_SlotDefaultValues:
- slotName: Input
defaultValue:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotValueType: 0
m_SlotName: Input
m_Node: {fileID: 11497078}
m_PrecisionNames:
- half
m_SwizzleChannel: 0
--- !u!114 &11498308
MonoBehaviour:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f80af444cd4235c419b356216d784b57, type: 3}
m_Name: Sin Time
m_EditorClassIdentifier:
m_Slots:
- type: 1
m_Title: Sin Time
m_Name: SinTime
m_DataTypeString:
m_Properties: []
m_GenericTypeString:
color: 0
style: node
position:
serializedVersion: 2
x: -1672.3367
y: 826.0602
width: 1086.3367
height: 142.93982
showEmptySlots: 1
m_SlotDefaultValues:
- slotName:
value:
m_DefaultVector: {x: 0, y: 0, z: 0, w: 0}
m_SlotName:
m_Node: {fileID: 0}
- slotName: SinTime
value:
m_DefaultVector: {x: 1, y: 1, z: 1, w: 1}
m_SlotName: SinTime
m_Node: {fileID: 11498308}
m_PrecisionNames:
- half