Files
BlockSpace-v1.5.0b/Assets/Shader/Hidden_TerrainEngine_Details_UniversalPipeline_Vertexlit.shader
2026-06-01 17:19:55 +02:00

11348 lines
892 KiB
GLSL

Shader "Hidden/TerrainEngine/Details/UniversalPipeline/Vertexlit"
{
Properties
{
_MainTex ("Main Texture", 2D) = "white" {}
}
SubShader
{
LOD 100
Tags { "IGNOREPROJECTOR" = "true" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Opaque" "UniversalMaterialType" = "Unlit" }
Pass
{
Name "TerrainDetailVertex"
LOD 100
Tags { "IGNOREPROJECTOR" = "true" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Opaque" "UniversalMaterialType" = "Unlit" }
GpuProgramID 18668
HLSLPROGRAM
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
#pragma vertex vert
#pragma fragment frag
#pragma target 4.0
#pragma multi_compile _ STEREO_INSTANCING_ON
#pragma shader_feature _ADDITIONAL_LIGHTS
#pragma multi_compile _ _LIGHT_COOKIES
#pragma shader_feature _MAIN_LIGHT_SHADOWS
#pragma shader_feature _MAIN_LIGHT_SHADOWS_CASCADE
#pragma multi_compile _ _SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4 unity_LightData;
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[131];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[20];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float4 vertex_output_5;
static float3 vertex_output_6;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float4 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[130u].x, vertex_uniform_buffer_0[130u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[130u].y, vertex_uniform_buffer_0[130u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
precise float vertex_unnamed_95 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_96 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_97 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
float vertex_unnamed_114 = clamp(dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
precise float vertex_unnamed_115 = vertex_unnamed_114 * vertex_unnamed_95;
precise float vertex_unnamed_116 = vertex_unnamed_114 * vertex_unnamed_96;
precise float vertex_unnamed_117 = vertex_unnamed_114 * vertex_unnamed_97;
vertex_output_3.x = vertex_unnamed_115;
vertex_output_3.y = vertex_unnamed_116;
vertex_output_3.z = vertex_unnamed_117;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_130 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_131 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_132 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_158 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_130)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_159 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_131)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_160 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_132)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_166 = vertex_unnamed_159 * vertex_uniform_buffer_2[1u].x;
precise float vertex_unnamed_167 = vertex_unnamed_159 * vertex_uniform_buffer_2[1u].y;
precise float vertex_unnamed_168 = vertex_unnamed_159 * vertex_uniform_buffer_2[1u].z;
precise float vertex_unnamed_190 = mad(vertex_uniform_buffer_2[2u].x, vertex_unnamed_160, mad(vertex_uniform_buffer_2[0u].x, vertex_unnamed_158, vertex_unnamed_166)) + vertex_uniform_buffer_2[3u].x;
precise float vertex_unnamed_191 = mad(vertex_uniform_buffer_2[2u].y, vertex_unnamed_160, mad(vertex_uniform_buffer_2[0u].y, vertex_unnamed_158, vertex_unnamed_167)) + vertex_uniform_buffer_2[3u].y;
precise float vertex_unnamed_192 = mad(vertex_uniform_buffer_2[2u].z, vertex_unnamed_160, mad(vertex_uniform_buffer_2[0u].z, vertex_unnamed_158, vertex_unnamed_168)) + vertex_uniform_buffer_2[3u].z;
vertex_output_4.x = vertex_unnamed_190;
vertex_output_4.y = vertex_unnamed_191;
vertex_output_4.z = vertex_unnamed_192;
vertex_output_5.x = vertex_input_3.x;
vertex_output_5.y = vertex_input_3.y;
vertex_output_5.z = vertex_input_3.z;
vertex_output_5.w = 0.0f;
vertex_output_6.x = vertex_unnamed_158;
vertex_output_6.y = vertex_unnamed_159;
vertex_output_6.z = vertex_unnamed_160;
precise float vertex_unnamed_216 = vertex_unnamed_159 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_217 = vertex_unnamed_159 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_218 = vertex_unnamed_159 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_219 = vertex_unnamed_159 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_249 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_160, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_158, vertex_unnamed_216)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_250 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_160, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_158, vertex_unnamed_217)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_251 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_160, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_158, vertex_unnamed_218)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_252 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_160, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_158, vertex_unnamed_219)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_249;
gl_Position.y = vertex_unnamed_250;
gl_Position.z = vertex_unnamed_251;
gl_Position.w = vertex_unnamed_252;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[130] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[100];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 vertex_uniform_buffer_3[20];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float4 vertex_output_5;
static float3 vertex_output_6;
static uint vertex_output_8;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float4 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_8 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[99u].x, vertex_uniform_buffer_0[99u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[99u].y, vertex_uniform_buffer_0[99u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
precise float vertex_unnamed_105 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_106 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_107 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
float vertex_unnamed_124 = clamp(dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
precise float vertex_unnamed_125 = vertex_unnamed_124 * vertex_unnamed_105;
precise float vertex_unnamed_126 = vertex_unnamed_124 * vertex_unnamed_106;
precise float vertex_unnamed_127 = vertex_unnamed_124 * vertex_unnamed_107;
vertex_output_3.x = vertex_unnamed_125;
vertex_output_3.y = vertex_unnamed_126;
vertex_output_3.z = vertex_unnamed_127;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_140 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_141 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_142 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_168 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_140)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_169 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_141)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_170 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_142)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_176 = vertex_unnamed_169 * vertex_uniform_buffer_3[1u].x;
precise float vertex_unnamed_177 = vertex_unnamed_169 * vertex_uniform_buffer_3[1u].y;
precise float vertex_unnamed_178 = vertex_unnamed_169 * vertex_uniform_buffer_3[1u].z;
precise float vertex_unnamed_200 = mad(vertex_uniform_buffer_3[2u].x, vertex_unnamed_170, mad(vertex_uniform_buffer_3[0u].x, vertex_unnamed_168, vertex_unnamed_176)) + vertex_uniform_buffer_3[3u].x;
precise float vertex_unnamed_201 = mad(vertex_uniform_buffer_3[2u].y, vertex_unnamed_170, mad(vertex_uniform_buffer_3[0u].y, vertex_unnamed_168, vertex_unnamed_177)) + vertex_uniform_buffer_3[3u].y;
precise float vertex_unnamed_202 = mad(vertex_uniform_buffer_3[2u].z, vertex_unnamed_170, mad(vertex_uniform_buffer_3[0u].z, vertex_unnamed_168, vertex_unnamed_178)) + vertex_uniform_buffer_3[3u].z;
vertex_output_4.x = vertex_unnamed_200;
vertex_output_4.y = vertex_unnamed_201;
vertex_output_4.z = vertex_unnamed_202;
vertex_output_5.x = vertex_input_3.x;
vertex_output_5.y = vertex_input_3.y;
vertex_output_5.z = vertex_input_3.z;
vertex_output_5.w = 0.0f;
vertex_output_6.x = vertex_unnamed_168;
vertex_output_6.y = vertex_unnamed_169;
vertex_output_6.z = vertex_unnamed_170;
uint vertex_unnamed_223 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_224 = vertex_unnamed_223 << 2u;
gl_Layer = int(vertex_unnamed_223);
uint vertex_unnamed_225 = vertex_unnamed_224 + 33u;
precise float vertex_unnamed_233 = vertex_unnamed_169 * vertex_uniform_buffer_2[vertex_unnamed_225].x;
precise float vertex_unnamed_234 = vertex_unnamed_169 * vertex_uniform_buffer_2[vertex_unnamed_225].y;
precise float vertex_unnamed_235 = vertex_unnamed_169 * vertex_uniform_buffer_2[vertex_unnamed_225].z;
precise float vertex_unnamed_236 = vertex_unnamed_169 * vertex_uniform_buffer_2[vertex_unnamed_225].w;
uint vertex_unnamed_237 = vertex_unnamed_224 + 32u;
uint vertex_unnamed_249 = vertex_unnamed_224 + 34u;
uint vertex_unnamed_261 = vertex_unnamed_224 + 35u;
precise float vertex_unnamed_269 = mad(vertex_uniform_buffer_2[vertex_unnamed_249].x, vertex_unnamed_170, mad(vertex_uniform_buffer_2[vertex_unnamed_237].x, vertex_unnamed_168, vertex_unnamed_233)) + vertex_uniform_buffer_2[vertex_unnamed_261].x;
precise float vertex_unnamed_270 = mad(vertex_uniform_buffer_2[vertex_unnamed_249].y, vertex_unnamed_170, mad(vertex_uniform_buffer_2[vertex_unnamed_237].y, vertex_unnamed_168, vertex_unnamed_234)) + vertex_uniform_buffer_2[vertex_unnamed_261].y;
precise float vertex_unnamed_271 = mad(vertex_uniform_buffer_2[vertex_unnamed_249].z, vertex_unnamed_170, mad(vertex_uniform_buffer_2[vertex_unnamed_237].z, vertex_unnamed_168, vertex_unnamed_235)) + vertex_uniform_buffer_2[vertex_unnamed_261].z;
precise float vertex_unnamed_272 = mad(vertex_uniform_buffer_2[vertex_unnamed_249].w, vertex_unnamed_170, mad(vertex_uniform_buffer_2[vertex_unnamed_237].w, vertex_unnamed_168, vertex_unnamed_236)) + vertex_uniform_buffer_2[vertex_unnamed_261].w;
gl_Position.x = vertex_unnamed_269;
gl_Position.y = vertex_unnamed_270;
gl_Position.z = vertex_unnamed_271;
gl_Position.w = vertex_unnamed_272;
vertex_output_8 = 0u;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[99] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_3[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_3[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_3[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_3[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_3[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_3[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_3[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_3[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_3[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_3[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_3[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_3[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_3[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_3[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_3[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_3[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_3[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_3[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_3[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_3[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
stage_output.vertex_output_8 = vertex_output_8;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4 unity_LightData;
static float4 vertex_uniform_buffer_0[131];
static float4 vertex_uniform_buffer_1[12];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_5 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[130u].x, vertex_uniform_buffer_0[130u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[130u].y, vertex_uniform_buffer_0[130u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
precise float vertex_unnamed_89 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_90 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_91 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
float vertex_unnamed_108 = clamp(dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
precise float vertex_unnamed_109 = vertex_unnamed_108 * vertex_unnamed_89;
precise float vertex_unnamed_110 = vertex_unnamed_108 * vertex_unnamed_90;
precise float vertex_unnamed_111 = vertex_unnamed_108 * vertex_unnamed_91;
vertex_output_3.x = vertex_unnamed_109;
vertex_output_3.y = vertex_unnamed_110;
vertex_output_3.z = vertex_unnamed_111;
vertex_output_3.w = 0.0f;
vertex_output_4.x = vertex_input_3.x;
vertex_output_4.y = vertex_input_3.y;
vertex_output_4.z = vertex_input_3.z;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_133 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_134 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_135 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_161 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_133)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_162 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_134)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_163 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_135)) + vertex_uniform_buffer_1[3u].z;
vertex_output_5.x = vertex_unnamed_161;
vertex_output_5.y = vertex_unnamed_162;
vertex_output_5.z = vertex_unnamed_163;
precise float vertex_unnamed_174 = vertex_unnamed_162 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_175 = vertex_unnamed_162 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_176 = vertex_unnamed_162 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_177 = vertex_unnamed_162 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_207 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_163, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_161, vertex_unnamed_174)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_208 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_163, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_161, vertex_unnamed_175)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_209 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_163, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_161, vertex_unnamed_176)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_210 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_163, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_161, vertex_unnamed_177)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_207;
gl_Position.y = vertex_unnamed_208;
gl_Position.z = vertex_unnamed_209;
gl_Position.w = vertex_unnamed_210;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[130] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
static float4 vertex_uniform_buffer_0[100];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static uint vertex_output_7;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_5 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_7 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[99u].x, vertex_uniform_buffer_0[99u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[99u].y, vertex_uniform_buffer_0[99u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
precise float vertex_unnamed_99 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_100 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_101 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
float vertex_unnamed_118 = clamp(dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
precise float vertex_unnamed_119 = vertex_unnamed_118 * vertex_unnamed_99;
precise float vertex_unnamed_120 = vertex_unnamed_118 * vertex_unnamed_100;
precise float vertex_unnamed_121 = vertex_unnamed_118 * vertex_unnamed_101;
vertex_output_3.x = vertex_unnamed_119;
vertex_output_3.y = vertex_unnamed_120;
vertex_output_3.z = vertex_unnamed_121;
vertex_output_3.w = 0.0f;
vertex_output_4.x = vertex_input_3.x;
vertex_output_4.y = vertex_input_3.y;
vertex_output_4.z = vertex_input_3.z;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_143 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_144 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_145 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_171 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_143)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_172 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_144)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_173 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_145)) + vertex_uniform_buffer_1[3u].z;
vertex_output_5.x = vertex_unnamed_171;
vertex_output_5.y = vertex_unnamed_172;
vertex_output_5.z = vertex_unnamed_173;
uint vertex_unnamed_181 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_182 = vertex_unnamed_181 << 2u;
gl_Layer = int(vertex_unnamed_181);
uint vertex_unnamed_183 = vertex_unnamed_182 + 33u;
precise float vertex_unnamed_191 = vertex_unnamed_172 * vertex_uniform_buffer_2[vertex_unnamed_183].x;
precise float vertex_unnamed_192 = vertex_unnamed_172 * vertex_uniform_buffer_2[vertex_unnamed_183].y;
precise float vertex_unnamed_193 = vertex_unnamed_172 * vertex_uniform_buffer_2[vertex_unnamed_183].z;
precise float vertex_unnamed_194 = vertex_unnamed_172 * vertex_uniform_buffer_2[vertex_unnamed_183].w;
uint vertex_unnamed_195 = vertex_unnamed_182 + 32u;
uint vertex_unnamed_207 = vertex_unnamed_182 + 34u;
uint vertex_unnamed_219 = vertex_unnamed_182 + 35u;
precise float vertex_unnamed_227 = mad(vertex_uniform_buffer_2[vertex_unnamed_207].x, vertex_unnamed_173, mad(vertex_uniform_buffer_2[vertex_unnamed_195].x, vertex_unnamed_171, vertex_unnamed_191)) + vertex_uniform_buffer_2[vertex_unnamed_219].x;
precise float vertex_unnamed_228 = mad(vertex_uniform_buffer_2[vertex_unnamed_207].y, vertex_unnamed_173, mad(vertex_uniform_buffer_2[vertex_unnamed_195].y, vertex_unnamed_171, vertex_unnamed_192)) + vertex_uniform_buffer_2[vertex_unnamed_219].y;
precise float vertex_unnamed_229 = mad(vertex_uniform_buffer_2[vertex_unnamed_207].z, vertex_unnamed_173, mad(vertex_uniform_buffer_2[vertex_unnamed_195].z, vertex_unnamed_171, vertex_unnamed_193)) + vertex_uniform_buffer_2[vertex_unnamed_219].z;
precise float vertex_unnamed_230 = mad(vertex_uniform_buffer_2[vertex_unnamed_207].w, vertex_unnamed_173, mad(vertex_uniform_buffer_2[vertex_unnamed_195].w, vertex_unnamed_171, vertex_unnamed_194)) + vertex_uniform_buffer_2[vertex_unnamed_219].w;
gl_Position.x = vertex_unnamed_227;
gl_Position.y = vertex_unnamed_228;
gl_Position.z = vertex_unnamed_229;
gl_Position.w = vertex_unnamed_230;
vertex_output_7 = 0u;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[99] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_7 = vertex_output_7;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_56 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_62 = (-0.0f) - fragment_unnamed_56;
float fragment_unnamed_65 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_62);
precise float fragment_unnamed_79 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_80 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_81 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_82 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_129 = asfloat(1065353216u);
precise float fragment_unnamed_160 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_161 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_162 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_180 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_181 = fragment_unnamed_180 + 1.0f;
float fragment_unnamed_201 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_181)));
float4 fragment_unnamed_221 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_227 = mad(fragment_input_3.x, fragment_unnamed_201, fragment_unnamed_160) * fragment_unnamed_221.x;
precise float fragment_unnamed_228 = mad(fragment_input_3.y, fragment_unnamed_201, fragment_unnamed_161) * fragment_unnamed_221.y;
precise float fragment_unnamed_229 = mad(fragment_input_3.z, fragment_unnamed_201, fragment_unnamed_162) * fragment_unnamed_221.z;
fragment_output_0.x = fragment_unnamed_227;
fragment_output_0.y = fragment_unnamed_228;
fragment_output_0.z = fragment_unnamed_229;
fragment_output_0.w = fragment_unnamed_221.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_59 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_65 = (-0.0f) - fragment_unnamed_59;
float fragment_unnamed_68 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_65);
precise float fragment_unnamed_82 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_83 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_84 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_85 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_132 = asfloat(1065353216u);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_183 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_184 = fragment_unnamed_183 + 1.0f;
float fragment_unnamed_204 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_184)));
float4 fragment_unnamed_224 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_230 = mad(fragment_input_3.x, fragment_unnamed_204, fragment_unnamed_163) * fragment_unnamed_224.x;
precise float fragment_unnamed_231 = mad(fragment_input_3.y, fragment_unnamed_204, fragment_unnamed_164) * fragment_unnamed_224.y;
precise float fragment_unnamed_232 = mad(fragment_input_3.z, fragment_unnamed_204, fragment_unnamed_165) * fragment_unnamed_224.z;
fragment_output_0.x = fragment_unnamed_230;
fragment_output_0.y = fragment_unnamed_231;
fragment_output_0.z = fragment_unnamed_232;
fragment_output_0.w = fragment_unnamed_224.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_64 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_69 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_70 = fragment_input_5.x + fragment_unnamed_64;
precise float fragment_unnamed_71 = fragment_input_5.y + fragment_unnamed_67;
precise float fragment_unnamed_72 = fragment_input_5.z + fragment_unnamed_69;
precise float fragment_unnamed_86 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_88 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_90 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_91 = fragment_input_5.x + fragment_unnamed_86;
precise float fragment_unnamed_92 = fragment_input_5.y + fragment_unnamed_88;
precise float fragment_unnamed_93 = fragment_input_5.z + fragment_unnamed_90;
precise float fragment_unnamed_107 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_109 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_111 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_112 = fragment_input_5.x + fragment_unnamed_107;
precise float fragment_unnamed_113 = fragment_input_5.y + fragment_unnamed_109;
precise float fragment_unnamed_114 = fragment_input_5.z + fragment_unnamed_111;
precise float fragment_unnamed_128 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_130 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_132 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_133 = fragment_input_5.x + fragment_unnamed_128;
precise float fragment_unnamed_134 = fragment_input_5.y + fragment_unnamed_130;
precise float fragment_unnamed_135 = fragment_input_5.z + fragment_unnamed_132;
bool fragment_unnamed_147 = dot(float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72), float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_148 = dot(float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93), float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_149 = dot(float3(fragment_unnamed_112, fragment_unnamed_113, fragment_unnamed_114), float3(fragment_unnamed_112, fragment_unnamed_113, fragment_unnamed_114)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_173 = asfloat(fragment_unnamed_147 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_148 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_174 = asfloat(fragment_unnamed_148 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_149 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_175 = asfloat(fragment_unnamed_149 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_133, fragment_unnamed_134, fragment_unnamed_135), float3(fragment_unnamed_133, fragment_unnamed_134, fragment_unnamed_135)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_188 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_147 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_173, 0.0f), max(fragment_unnamed_174, 0.0f), max(fragment_unnamed_175, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_189 = fragment_unnamed_188 + 4.0f;
uint fragment_unnamed_191 = uint(fragment_unnamed_189) << 2u;
uint fragment_unnamed_194 = fragment_unnamed_191 + 1u;
precise float fragment_unnamed_200 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].x;
precise float fragment_unnamed_201 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].y;
precise float fragment_unnamed_202 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].z;
uint fragment_unnamed_213 = fragment_unnamed_191 + 2u;
uint fragment_unnamed_224 = fragment_unnamed_191 + 3u;
precise float fragment_unnamed_231 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].x, fragment_input_5.x, fragment_unnamed_200)) + fragment_uniform_buffer_2[fragment_unnamed_224].x;
precise float fragment_unnamed_232 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].y, fragment_input_5.x, fragment_unnamed_201)) + fragment_uniform_buffer_2[fragment_unnamed_224].y;
precise float fragment_unnamed_233 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].z, fragment_input_5.x, fragment_unnamed_202)) + fragment_uniform_buffer_2[fragment_unnamed_224].z;
precise float fragment_unnamed_250 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_251 = fragment_unnamed_250 + 1.0f;
float fragment_unnamed_259 = asfloat(((((0.0f >= fragment_unnamed_233) ? 4294967295u : 0u) | ((fragment_unnamed_233 >= 1.0f) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_unnamed_233).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_251)));
precise float fragment_unnamed_264 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_269 = (-0.0f) - fragment_unnamed_264;
float fragment_unnamed_270 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_269);
precise float fragment_unnamed_283 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_284 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_285 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_286 = fragment_input_4.x * fragment_input_4.z;
float fragment_unnamed_332 = asfloat(1065353216u);
precise float fragment_unnamed_361 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
precise float fragment_unnamed_362 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
precise float fragment_unnamed_363 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
float4 fragment_unnamed_383 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_389 = mad(fragment_input_3.x, fragment_unnamed_259, fragment_unnamed_361) * fragment_unnamed_383.x;
precise float fragment_unnamed_390 = mad(fragment_input_3.y, fragment_unnamed_259, fragment_unnamed_362) * fragment_unnamed_383.y;
precise float fragment_unnamed_391 = mad(fragment_input_3.z, fragment_unnamed_259, fragment_unnamed_363) * fragment_unnamed_383.z;
fragment_output_0.x = fragment_unnamed_389;
fragment_output_0.y = fragment_unnamed_390;
fragment_output_0.z = fragment_unnamed_391;
fragment_output_0.w = fragment_unnamed_383.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static uint fragment_input_7;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_7 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_70 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_72 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_73 = fragment_input_5.x + fragment_unnamed_67;
precise float fragment_unnamed_74 = fragment_input_5.y + fragment_unnamed_70;
precise float fragment_unnamed_75 = fragment_input_5.z + fragment_unnamed_72;
precise float fragment_unnamed_89 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_91 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_93 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_94 = fragment_input_5.x + fragment_unnamed_89;
precise float fragment_unnamed_95 = fragment_input_5.y + fragment_unnamed_91;
precise float fragment_unnamed_96 = fragment_input_5.z + fragment_unnamed_93;
precise float fragment_unnamed_110 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_112 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_114 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_115 = fragment_input_5.x + fragment_unnamed_110;
precise float fragment_unnamed_116 = fragment_input_5.y + fragment_unnamed_112;
precise float fragment_unnamed_117 = fragment_input_5.z + fragment_unnamed_114;
precise float fragment_unnamed_131 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_133 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_135 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_136 = fragment_input_5.x + fragment_unnamed_131;
precise float fragment_unnamed_137 = fragment_input_5.y + fragment_unnamed_133;
precise float fragment_unnamed_138 = fragment_input_5.z + fragment_unnamed_135;
bool fragment_unnamed_150 = dot(float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75), float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_151 = dot(float3(fragment_unnamed_94, fragment_unnamed_95, fragment_unnamed_96), float3(fragment_unnamed_94, fragment_unnamed_95, fragment_unnamed_96)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_152 = dot(float3(fragment_unnamed_115, fragment_unnamed_116, fragment_unnamed_117), float3(fragment_unnamed_115, fragment_unnamed_116, fragment_unnamed_117)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_176 = asfloat(fragment_unnamed_150 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_151 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_177 = asfloat(fragment_unnamed_151 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_152 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_178 = asfloat(fragment_unnamed_152 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_136, fragment_unnamed_137, fragment_unnamed_138), float3(fragment_unnamed_136, fragment_unnamed_137, fragment_unnamed_138)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_191 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_150 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_176, 0.0f), max(fragment_unnamed_177, 0.0f), max(fragment_unnamed_178, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_192 = fragment_unnamed_191 + 4.0f;
uint fragment_unnamed_194 = uint(fragment_unnamed_192) << 2u;
uint fragment_unnamed_197 = fragment_unnamed_194 + 1u;
precise float fragment_unnamed_203 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].x;
precise float fragment_unnamed_204 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].y;
precise float fragment_unnamed_205 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].z;
uint fragment_unnamed_216 = fragment_unnamed_194 + 2u;
uint fragment_unnamed_227 = fragment_unnamed_194 + 3u;
precise float fragment_unnamed_234 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].x, fragment_input_5.x, fragment_unnamed_203)) + fragment_uniform_buffer_2[fragment_unnamed_227].x;
precise float fragment_unnamed_235 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].y, fragment_input_5.x, fragment_unnamed_204)) + fragment_uniform_buffer_2[fragment_unnamed_227].y;
precise float fragment_unnamed_236 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].z, fragment_input_5.x, fragment_unnamed_205)) + fragment_uniform_buffer_2[fragment_unnamed_227].z;
precise float fragment_unnamed_253 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_254 = fragment_unnamed_253 + 1.0f;
float fragment_unnamed_262 = asfloat(((((0.0f >= fragment_unnamed_236) ? 4294967295u : 0u) | ((fragment_unnamed_236 >= 1.0f) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_unnamed_236).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_254)));
precise float fragment_unnamed_267 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_272 = (-0.0f) - fragment_unnamed_267;
float fragment_unnamed_273 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_272);
precise float fragment_unnamed_286 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_287 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_288 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_289 = fragment_input_4.x * fragment_input_4.z;
float fragment_unnamed_335 = asfloat(1065353216u);
precise float fragment_unnamed_364 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
precise float fragment_unnamed_365 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
precise float fragment_unnamed_366 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
float4 fragment_unnamed_386 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_392 = mad(fragment_input_3.x, fragment_unnamed_262, fragment_unnamed_364) * fragment_unnamed_386.x;
precise float fragment_unnamed_393 = mad(fragment_input_3.y, fragment_unnamed_262, fragment_unnamed_365) * fragment_unnamed_386.y;
precise float fragment_unnamed_394 = mad(fragment_input_3.z, fragment_unnamed_262, fragment_unnamed_366) * fragment_unnamed_386.z;
fragment_output_0.x = fragment_unnamed_392;
fragment_output_0.y = fragment_unnamed_393;
fragment_output_0.z = fragment_unnamed_394;
fragment_output_0.w = fragment_unnamed_386.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_7 = stage_input.fragment_input_7;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_56 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_62 = (-0.0f) - fragment_unnamed_56;
float fragment_unnamed_65 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_62);
precise float fragment_unnamed_79 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_80 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_81 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_82 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_129 = asfloat(1065353216u);
precise float fragment_unnamed_160 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_161 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_162 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_65, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_79, fragment_unnamed_80, fragment_unnamed_81, fragment_unnamed_82))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_129));
precise float fragment_unnamed_180 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_181 = fragment_unnamed_180 + 1.0f;
float fragment_unnamed_201 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_181)));
float4 fragment_unnamed_221 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_227 = mad(fragment_input_3.x, fragment_unnamed_201, fragment_unnamed_160) * fragment_unnamed_221.x;
precise float fragment_unnamed_228 = mad(fragment_input_3.y, fragment_unnamed_201, fragment_unnamed_161) * fragment_unnamed_221.y;
precise float fragment_unnamed_229 = mad(fragment_input_3.z, fragment_unnamed_201, fragment_unnamed_162) * fragment_unnamed_221.z;
fragment_output_0.x = fragment_unnamed_227;
fragment_output_0.y = fragment_unnamed_228;
fragment_output_0.z = fragment_unnamed_229;
fragment_output_0.w = fragment_unnamed_221.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_59 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_65 = (-0.0f) - fragment_unnamed_59;
float fragment_unnamed_68 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_65);
precise float fragment_unnamed_82 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_83 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_84 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_85 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_132 = asfloat(1065353216u);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_68, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_82, fragment_unnamed_83, fragment_unnamed_84, fragment_unnamed_85))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_132));
precise float fragment_unnamed_183 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_184 = fragment_unnamed_183 + 1.0f;
float fragment_unnamed_204 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_184)));
float4 fragment_unnamed_224 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_230 = mad(fragment_input_3.x, fragment_unnamed_204, fragment_unnamed_163) * fragment_unnamed_224.x;
precise float fragment_unnamed_231 = mad(fragment_input_3.y, fragment_unnamed_204, fragment_unnamed_164) * fragment_unnamed_224.y;
precise float fragment_unnamed_232 = mad(fragment_input_3.z, fragment_unnamed_204, fragment_unnamed_165) * fragment_unnamed_224.z;
fragment_output_0.x = fragment_unnamed_230;
fragment_output_0.y = fragment_unnamed_231;
fragment_output_0.z = fragment_unnamed_232;
fragment_output_0.w = fragment_unnamed_224.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_64 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_69 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_70 = fragment_input_5.x + fragment_unnamed_64;
precise float fragment_unnamed_71 = fragment_input_5.y + fragment_unnamed_67;
precise float fragment_unnamed_72 = fragment_input_5.z + fragment_unnamed_69;
precise float fragment_unnamed_86 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_88 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_90 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_91 = fragment_input_5.x + fragment_unnamed_86;
precise float fragment_unnamed_92 = fragment_input_5.y + fragment_unnamed_88;
precise float fragment_unnamed_93 = fragment_input_5.z + fragment_unnamed_90;
precise float fragment_unnamed_107 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_109 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_111 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_112 = fragment_input_5.x + fragment_unnamed_107;
precise float fragment_unnamed_113 = fragment_input_5.y + fragment_unnamed_109;
precise float fragment_unnamed_114 = fragment_input_5.z + fragment_unnamed_111;
precise float fragment_unnamed_128 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_130 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_132 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_133 = fragment_input_5.x + fragment_unnamed_128;
precise float fragment_unnamed_134 = fragment_input_5.y + fragment_unnamed_130;
precise float fragment_unnamed_135 = fragment_input_5.z + fragment_unnamed_132;
bool fragment_unnamed_147 = dot(float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72), float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_148 = dot(float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93), float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_149 = dot(float3(fragment_unnamed_112, fragment_unnamed_113, fragment_unnamed_114), float3(fragment_unnamed_112, fragment_unnamed_113, fragment_unnamed_114)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_173 = asfloat(fragment_unnamed_147 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_148 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_174 = asfloat(fragment_unnamed_148 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_149 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_175 = asfloat(fragment_unnamed_149 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_133, fragment_unnamed_134, fragment_unnamed_135), float3(fragment_unnamed_133, fragment_unnamed_134, fragment_unnamed_135)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_188 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_147 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_173, 0.0f), max(fragment_unnamed_174, 0.0f), max(fragment_unnamed_175, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_189 = fragment_unnamed_188 + 4.0f;
uint fragment_unnamed_191 = uint(fragment_unnamed_189) << 2u;
uint fragment_unnamed_194 = fragment_unnamed_191 + 1u;
precise float fragment_unnamed_200 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].x;
precise float fragment_unnamed_201 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].y;
precise float fragment_unnamed_202 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].z;
uint fragment_unnamed_213 = fragment_unnamed_191 + 2u;
uint fragment_unnamed_224 = fragment_unnamed_191 + 3u;
precise float fragment_unnamed_231 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].x, fragment_input_5.x, fragment_unnamed_200)) + fragment_uniform_buffer_2[fragment_unnamed_224].x;
precise float fragment_unnamed_232 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].y, fragment_input_5.x, fragment_unnamed_201)) + fragment_uniform_buffer_2[fragment_unnamed_224].y;
precise float fragment_unnamed_233 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].z, fragment_input_5.x, fragment_unnamed_202)) + fragment_uniform_buffer_2[fragment_unnamed_224].z;
precise float fragment_unnamed_250 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_251 = fragment_unnamed_250 + 1.0f;
float fragment_unnamed_259 = asfloat(((((0.0f >= fragment_unnamed_233) ? 4294967295u : 0u) | ((fragment_unnamed_233 >= 1.0f) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_unnamed_233).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_251)));
precise float fragment_unnamed_264 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_269 = (-0.0f) - fragment_unnamed_264;
float fragment_unnamed_270 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_269);
precise float fragment_unnamed_283 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_284 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_285 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_286 = fragment_input_4.x * fragment_input_4.z;
float fragment_unnamed_332 = asfloat(1065353216u);
precise float fragment_unnamed_361 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
precise float fragment_unnamed_362 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
precise float fragment_unnamed_363 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_270, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285, fragment_unnamed_286))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_332));
float4 fragment_unnamed_383 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_389 = mad(fragment_input_3.x, fragment_unnamed_259, fragment_unnamed_361) * fragment_unnamed_383.x;
precise float fragment_unnamed_390 = mad(fragment_input_3.y, fragment_unnamed_259, fragment_unnamed_362) * fragment_unnamed_383.y;
precise float fragment_unnamed_391 = mad(fragment_input_3.z, fragment_unnamed_259, fragment_unnamed_363) * fragment_unnamed_383.z;
fragment_output_0.x = fragment_unnamed_389;
fragment_output_0.y = fragment_unnamed_390;
fragment_output_0.z = fragment_unnamed_391;
fragment_output_0.w = fragment_unnamed_383.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static uint fragment_input_7;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_7 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_70 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_72 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_73 = fragment_input_5.x + fragment_unnamed_67;
precise float fragment_unnamed_74 = fragment_input_5.y + fragment_unnamed_70;
precise float fragment_unnamed_75 = fragment_input_5.z + fragment_unnamed_72;
precise float fragment_unnamed_89 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_91 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_93 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_94 = fragment_input_5.x + fragment_unnamed_89;
precise float fragment_unnamed_95 = fragment_input_5.y + fragment_unnamed_91;
precise float fragment_unnamed_96 = fragment_input_5.z + fragment_unnamed_93;
precise float fragment_unnamed_110 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_112 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_114 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_115 = fragment_input_5.x + fragment_unnamed_110;
precise float fragment_unnamed_116 = fragment_input_5.y + fragment_unnamed_112;
precise float fragment_unnamed_117 = fragment_input_5.z + fragment_unnamed_114;
precise float fragment_unnamed_131 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_133 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_135 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_136 = fragment_input_5.x + fragment_unnamed_131;
precise float fragment_unnamed_137 = fragment_input_5.y + fragment_unnamed_133;
precise float fragment_unnamed_138 = fragment_input_5.z + fragment_unnamed_135;
bool fragment_unnamed_150 = dot(float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75), float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_151 = dot(float3(fragment_unnamed_94, fragment_unnamed_95, fragment_unnamed_96), float3(fragment_unnamed_94, fragment_unnamed_95, fragment_unnamed_96)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_152 = dot(float3(fragment_unnamed_115, fragment_unnamed_116, fragment_unnamed_117), float3(fragment_unnamed_115, fragment_unnamed_116, fragment_unnamed_117)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_176 = asfloat(fragment_unnamed_150 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_151 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_177 = asfloat(fragment_unnamed_151 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_152 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_178 = asfloat(fragment_unnamed_152 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_136, fragment_unnamed_137, fragment_unnamed_138), float3(fragment_unnamed_136, fragment_unnamed_137, fragment_unnamed_138)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_191 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_150 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_176, 0.0f), max(fragment_unnamed_177, 0.0f), max(fragment_unnamed_178, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_192 = fragment_unnamed_191 + 4.0f;
uint fragment_unnamed_194 = uint(fragment_unnamed_192) << 2u;
uint fragment_unnamed_197 = fragment_unnamed_194 + 1u;
precise float fragment_unnamed_203 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].x;
precise float fragment_unnamed_204 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].y;
precise float fragment_unnamed_205 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].z;
uint fragment_unnamed_216 = fragment_unnamed_194 + 2u;
uint fragment_unnamed_227 = fragment_unnamed_194 + 3u;
precise float fragment_unnamed_234 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].x, fragment_input_5.x, fragment_unnamed_203)) + fragment_uniform_buffer_2[fragment_unnamed_227].x;
precise float fragment_unnamed_235 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].y, fragment_input_5.x, fragment_unnamed_204)) + fragment_uniform_buffer_2[fragment_unnamed_227].y;
precise float fragment_unnamed_236 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].z, fragment_input_5.x, fragment_unnamed_205)) + fragment_uniform_buffer_2[fragment_unnamed_227].z;
precise float fragment_unnamed_253 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_254 = fragment_unnamed_253 + 1.0f;
float fragment_unnamed_262 = asfloat(((((0.0f >= fragment_unnamed_236) ? 4294967295u : 0u) | ((fragment_unnamed_236 >= 1.0f) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_unnamed_236).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_254)));
precise float fragment_unnamed_267 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_272 = (-0.0f) - fragment_unnamed_267;
float fragment_unnamed_273 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_272);
precise float fragment_unnamed_286 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_287 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_288 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_289 = fragment_input_4.x * fragment_input_4.z;
float fragment_unnamed_335 = asfloat(1065353216u);
precise float fragment_unnamed_364 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
precise float fragment_unnamed_365 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
precise float fragment_unnamed_366 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_273, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288, fragment_unnamed_289))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_335));
float4 fragment_unnamed_386 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_392 = mad(fragment_input_3.x, fragment_unnamed_262, fragment_unnamed_364) * fragment_unnamed_386.x;
precise float fragment_unnamed_393 = mad(fragment_input_3.y, fragment_unnamed_262, fragment_unnamed_365) * fragment_unnamed_386.y;
precise float fragment_unnamed_394 = mad(fragment_input_3.z, fragment_unnamed_262, fragment_unnamed_366) * fragment_unnamed_386.z;
fragment_output_0.x = fragment_unnamed_392;
fragment_output_0.y = fragment_unnamed_393;
fragment_output_0.z = fragment_unnamed_394;
fragment_output_0.w = fragment_unnamed_386.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_7 = stage_input.fragment_input_7;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_60 = asfloat(1065353216u);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_142 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_147 = (-0.0f) - fragment_unnamed_142;
float fragment_unnamed_150 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_147);
precise float fragment_unnamed_160 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
precise float fragment_unnamed_161 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
precise float fragment_unnamed_162 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
float4 fragment_unnamed_173 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_267;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_268;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_214 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_215 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_216 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_217 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_242 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_243 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_244 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_245 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_268 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_214, fragment_unnamed_215), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_216, fragment_unnamed_217), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_242, fragment_unnamed_243), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_244, fragment_unnamed_245), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_310;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_322 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_323 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_332 = (-0.0f) - fragment_unnamed_322;
precise float fragment_unnamed_333 = (-0.0f) - fragment_unnamed_323;
float fragment_unnamed_334 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_332);
float fragment_unnamed_335 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_333);
precise float fragment_unnamed_336 = fragment_unnamed_334 + 0.5f;
precise float fragment_unnamed_337 = fragment_unnamed_334 + 1.0f;
precise float fragment_unnamed_338 = fragment_unnamed_335 + 0.5f;
precise float fragment_unnamed_339 = fragment_unnamed_335 + 1.0f;
precise float fragment_unnamed_340 = fragment_unnamed_336 * fragment_unnamed_336;
precise float fragment_unnamed_341 = fragment_unnamed_336 * fragment_unnamed_336;
precise float fragment_unnamed_342 = fragment_unnamed_338 * fragment_unnamed_338;
precise float fragment_unnamed_343 = fragment_unnamed_338 * fragment_unnamed_338;
precise float fragment_unnamed_344 = fragment_unnamed_341 * 0.07999999821186065673828125f;
precise float fragment_unnamed_346 = fragment_unnamed_343 * 0.07999999821186065673828125f;
precise float fragment_unnamed_347 = (-0.0f) - fragment_unnamed_334;
precise float fragment_unnamed_348 = (-0.0f) - fragment_unnamed_335;
precise float fragment_unnamed_351 = (-0.0f) - fragment_unnamed_334;
precise float fragment_unnamed_352 = (-0.0f) - fragment_unnamed_335;
precise float fragment_unnamed_353 = fragment_unnamed_351 + 1.0f;
precise float fragment_unnamed_354 = fragment_unnamed_352 + 1.0f;
float fragment_unnamed_355 = min(fragment_unnamed_334, 0.0f);
float fragment_unnamed_356 = min(fragment_unnamed_335, 0.0f);
precise float fragment_unnamed_357 = (-0.0f) - fragment_unnamed_355;
precise float fragment_unnamed_358 = (-0.0f) - fragment_unnamed_356;
float fragment_unnamed_361 = max(fragment_unnamed_334, 0.0f);
float fragment_unnamed_362 = max(fragment_unnamed_335, 0.0f);
precise float fragment_unnamed_363 = (-0.0f) - fragment_unnamed_361;
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_362;
precise float fragment_unnamed_367 = mad(fragment_unnamed_357, fragment_unnamed_355, fragment_unnamed_353) + 1.0f;
precise float fragment_unnamed_368 = mad(fragment_unnamed_358, fragment_unnamed_356, fragment_unnamed_354) + 1.0f;
precise float fragment_unnamed_369 = mad(fragment_unnamed_363, fragment_unnamed_361, fragment_unnamed_337) + 1.0f;
precise float fragment_unnamed_370 = mad(fragment_unnamed_364, fragment_unnamed_362, fragment_unnamed_339) + 1.0f;
precise float fragment_unnamed_371 = mad(fragment_unnamed_340, 0.5f, fragment_unnamed_347) * 0.1599999964237213134765625f;
precise float fragment_unnamed_373 = mad(fragment_unnamed_342, 0.5f, fragment_unnamed_348) * 0.1599999964237213134765625f;
precise float fragment_unnamed_374 = fragment_unnamed_353 * 0.1599999964237213134765625f;
precise float fragment_unnamed_375 = fragment_unnamed_354 * 0.1599999964237213134765625f;
precise float fragment_unnamed_376 = fragment_unnamed_367 * 0.1599999964237213134765625f;
precise float fragment_unnamed_377 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_378 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_379 = fragment_unnamed_370 * 0.1599999964237213134765625f;
precise float fragment_unnamed_380 = fragment_unnamed_337 * 0.1599999964237213134765625f;
precise float fragment_unnamed_381 = fragment_unnamed_339 * 0.1599999964237213134765625f;
precise float fragment_unnamed_382 = fragment_unnamed_378 + fragment_unnamed_376;
precise float fragment_unnamed_383 = fragment_unnamed_344 + fragment_unnamed_380;
precise float fragment_unnamed_384 = fragment_unnamed_374 + fragment_unnamed_371;
precise float fragment_unnamed_385 = fragment_unnamed_378 + fragment_unnamed_376;
precise float fragment_unnamed_386 = fragment_unnamed_373 + fragment_unnamed_375;
precise float fragment_unnamed_387 = fragment_unnamed_377 + fragment_unnamed_379;
precise float fragment_unnamed_388 = fragment_unnamed_381 + fragment_unnamed_346;
precise float fragment_unnamed_389 = fragment_unnamed_374 / fragment_unnamed_384;
precise float fragment_unnamed_390 = fragment_unnamed_378 / fragment_unnamed_385;
precise float fragment_unnamed_391 = fragment_unnamed_344 / fragment_unnamed_383;
precise float fragment_unnamed_392 = fragment_unnamed_389 + (-2.5f);
precise float fragment_unnamed_394 = fragment_unnamed_390 + (-0.5f);
precise float fragment_unnamed_396 = fragment_unnamed_391 + 1.5f;
precise float fragment_unnamed_398 = fragment_unnamed_375 / fragment_unnamed_386;
precise float fragment_unnamed_399 = fragment_unnamed_379 / fragment_unnamed_387;
precise float fragment_unnamed_400 = fragment_unnamed_346 / fragment_unnamed_388;
precise float fragment_unnamed_401 = fragment_unnamed_398 + (-2.5f);
precise float fragment_unnamed_402 = fragment_unnamed_399 + (-0.5f);
precise float fragment_unnamed_403 = fragment_unnamed_400 + 1.5f;
precise float fragment_unnamed_407 = fragment_unnamed_394 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_408 = fragment_unnamed_392 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_409 = fragment_unnamed_396 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_413 = fragment_unnamed_401 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_414 = fragment_unnamed_402 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_415 = fragment_unnamed_403 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_454 = fragment_unnamed_386 * fragment_unnamed_384;
precise float fragment_unnamed_455 = fragment_unnamed_386 * fragment_unnamed_385;
precise float fragment_unnamed_456 = fragment_unnamed_386 * fragment_unnamed_383;
precise float fragment_unnamed_457 = fragment_unnamed_387 * fragment_unnamed_384;
precise float fragment_unnamed_458 = fragment_unnamed_387 * fragment_unnamed_382;
precise float fragment_unnamed_459 = fragment_unnamed_387 * fragment_unnamed_383;
precise float fragment_unnamed_460 = fragment_unnamed_388 * fragment_unnamed_384;
precise float fragment_unnamed_461 = fragment_unnamed_388 * fragment_unnamed_385;
precise float fragment_unnamed_462 = fragment_unnamed_388 * fragment_unnamed_383;
precise float fragment_unnamed_476 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x * fragment_unnamed_455;
float fragment_unnamed_512 = mad(fragment_unnamed_460, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_459, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_458, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_457, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_456, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_454, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x, fragment_unnamed_476))))));
fragment_unnamed_310 = mad(fragment_unnamed_462, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_461, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, fragment_unnamed_512));
}
else
{
float fragment_unnamed_537 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_538 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_547 = (-0.0f) - fragment_unnamed_537;
precise float fragment_unnamed_548 = (-0.0f) - fragment_unnamed_538;
float fragment_unnamed_549 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_547);
float fragment_unnamed_550 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_548);
precise float fragment_unnamed_551 = fragment_unnamed_549 + 0.5f;
precise float fragment_unnamed_552 = fragment_unnamed_549 + 1.0f;
precise float fragment_unnamed_553 = fragment_unnamed_550 + 0.5f;
precise float fragment_unnamed_554 = fragment_unnamed_550 + 1.0f;
precise float fragment_unnamed_555 = fragment_unnamed_551 * fragment_unnamed_551;
precise float fragment_unnamed_556 = fragment_unnamed_551 * fragment_unnamed_551;
precise float fragment_unnamed_557 = fragment_unnamed_553 * fragment_unnamed_553;
precise float fragment_unnamed_558 = fragment_unnamed_553 * fragment_unnamed_553;
precise float fragment_unnamed_559 = fragment_unnamed_556 * 0.040816001594066619873046875f;
precise float fragment_unnamed_561 = fragment_unnamed_558 * 0.040816001594066619873046875f;
precise float fragment_unnamed_562 = (-0.0f) - fragment_unnamed_549;
precise float fragment_unnamed_563 = (-0.0f) - fragment_unnamed_550;
precise float fragment_unnamed_566 = (-0.0f) - fragment_unnamed_549;
precise float fragment_unnamed_567 = (-0.0f) - fragment_unnamed_550;
precise float fragment_unnamed_568 = fragment_unnamed_566 + 1.0f;
precise float fragment_unnamed_569 = fragment_unnamed_567 + 1.0f;
float fragment_unnamed_570 = min(fragment_unnamed_549, 0.0f);
float fragment_unnamed_571 = min(fragment_unnamed_550, 0.0f);
precise float fragment_unnamed_572 = (-0.0f) - fragment_unnamed_570;
precise float fragment_unnamed_573 = (-0.0f) - fragment_unnamed_571;
float fragment_unnamed_576 = max(fragment_unnamed_549, 0.0f);
float fragment_unnamed_577 = max(fragment_unnamed_550, 0.0f);
precise float fragment_unnamed_578 = (-0.0f) - fragment_unnamed_576;
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_577;
precise float fragment_unnamed_582 = mad(fragment_unnamed_572, fragment_unnamed_570, fragment_unnamed_568) + 2.0f;
precise float fragment_unnamed_583 = mad(fragment_unnamed_573, fragment_unnamed_571, fragment_unnamed_569) + 2.0f;
precise float fragment_unnamed_584 = mad(fragment_unnamed_578, fragment_unnamed_576, fragment_unnamed_552) + 2.0f;
precise float fragment_unnamed_585 = mad(fragment_unnamed_579, fragment_unnamed_577, fragment_unnamed_554) + 2.0f;
precise float fragment_unnamed_586 = fragment_unnamed_584 * 0.08163200318813323974609375f;
precise float fragment_unnamed_588 = mad(fragment_unnamed_557, 0.5f, fragment_unnamed_563) * 0.08163200318813323974609375f;
precise float fragment_unnamed_589 = mad(fragment_unnamed_555, 0.5f, fragment_unnamed_562) * 0.08163200318813323974609375f;
precise float fragment_unnamed_590 = fragment_unnamed_585 * 0.08163200318813323974609375f;
precise float fragment_unnamed_591 = fragment_unnamed_582 * 0.08163200318813323974609375f;
precise float fragment_unnamed_592 = fragment_unnamed_583 * 0.08163200318813323974609375f;
float fragment_unnamed_597 = mad(fragment_unnamed_549, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_598 = mad(fragment_unnamed_549, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_599 = fragment_unnamed_597 + fragment_unnamed_589;
precise float fragment_unnamed_600 = fragment_unnamed_591 + mad(fragment_unnamed_549, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_601 = fragment_unnamed_598 + fragment_unnamed_586;
precise float fragment_unnamed_602 = fragment_unnamed_559 + mad(fragment_unnamed_549, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_605 = mad(fragment_unnamed_550, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_606 = mad(fragment_unnamed_550, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_607 = fragment_unnamed_605 + fragment_unnamed_588;
precise float fragment_unnamed_608 = fragment_unnamed_592 + mad(fragment_unnamed_550, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_609 = fragment_unnamed_606 + fragment_unnamed_590;
precise float fragment_unnamed_610 = fragment_unnamed_561 + mad(fragment_unnamed_550, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_611 = fragment_unnamed_597 / fragment_unnamed_599;
precise float fragment_unnamed_612 = fragment_unnamed_591 / fragment_unnamed_600;
precise float fragment_unnamed_613 = fragment_unnamed_598 / fragment_unnamed_601;
precise float fragment_unnamed_614 = fragment_unnamed_559 / fragment_unnamed_602;
precise float fragment_unnamed_615 = fragment_unnamed_611 + (-3.5f);
precise float fragment_unnamed_617 = fragment_unnamed_612 + (-1.5f);
precise float fragment_unnamed_619 = fragment_unnamed_613 + 0.5f;
precise float fragment_unnamed_620 = fragment_unnamed_614 + 2.5f;
precise float fragment_unnamed_622 = fragment_unnamed_605 / fragment_unnamed_607;
precise float fragment_unnamed_623 = fragment_unnamed_592 / fragment_unnamed_608;
precise float fragment_unnamed_624 = fragment_unnamed_606 / fragment_unnamed_609;
precise float fragment_unnamed_625 = fragment_unnamed_561 / fragment_unnamed_610;
precise float fragment_unnamed_626 = fragment_unnamed_622 + (-3.5f);
precise float fragment_unnamed_627 = fragment_unnamed_623 + (-1.5f);
precise float fragment_unnamed_628 = fragment_unnamed_624 + 0.5f;
precise float fragment_unnamed_629 = fragment_unnamed_625 + 2.5f;
precise float fragment_unnamed_633 = fragment_unnamed_620 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_634 = fragment_unnamed_615 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_635 = fragment_unnamed_617 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_636 = fragment_unnamed_619 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_640 = fragment_unnamed_626 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_641 = fragment_unnamed_629 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_642 = fragment_unnamed_627 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_643 = fragment_unnamed_628 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_720 = fragment_unnamed_607 * fragment_unnamed_599;
precise float fragment_unnamed_721 = fragment_unnamed_607 * fragment_unnamed_600;
precise float fragment_unnamed_722 = fragment_unnamed_607 * fragment_unnamed_601;
precise float fragment_unnamed_723 = fragment_unnamed_607 * fragment_unnamed_602;
precise float fragment_unnamed_724 = fragment_unnamed_608 * fragment_unnamed_599;
precise float fragment_unnamed_725 = fragment_unnamed_608 * fragment_unnamed_600;
precise float fragment_unnamed_726 = fragment_unnamed_608 * fragment_unnamed_601;
precise float fragment_unnamed_727 = fragment_unnamed_608 * fragment_unnamed_602;
precise float fragment_unnamed_728 = fragment_unnamed_609 * fragment_unnamed_599;
precise float fragment_unnamed_729 = fragment_unnamed_609 * fragment_unnamed_600;
precise float fragment_unnamed_730 = fragment_unnamed_609 * fragment_unnamed_601;
precise float fragment_unnamed_731 = fragment_unnamed_609 * fragment_unnamed_602;
precise float fragment_unnamed_732 = fragment_unnamed_610 * fragment_unnamed_599;
precise float fragment_unnamed_733 = fragment_unnamed_610 * fragment_unnamed_600;
precise float fragment_unnamed_734 = fragment_unnamed_610 * fragment_unnamed_601;
precise float fragment_unnamed_735 = fragment_unnamed_610 * fragment_unnamed_602;
precise float fragment_unnamed_749 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x * fragment_unnamed_721;
float fragment_unnamed_785 = mad(fragment_unnamed_726, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_725, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_724, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_723, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_722, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_720, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, fragment_unnamed_749))))));
float fragment_unnamed_827 = mad(fragment_unnamed_732, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_731, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_730, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_729, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_728, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_727, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, fragment_unnamed_785))))));
fragment_unnamed_310 = mad(fragment_unnamed_735, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_734, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_733, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, fragment_unnamed_827)));
}
fragment_unnamed_268 = fragment_unnamed_310;
}
fragment_unnamed_267 = fragment_unnamed_268;
}
else
{
fragment_unnamed_267 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_272 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_273 = fragment_unnamed_272 + 1.0f;
float fragment_unnamed_291 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_267, fragment_uniform_buffer_2[27u].x, fragment_unnamed_273)));
precise float fragment_unnamed_301 = mad(fragment_input_3.x, fragment_unnamed_291, fragment_unnamed_160) * fragment_unnamed_173.x;
precise float fragment_unnamed_302 = mad(fragment_input_3.y, fragment_unnamed_291, fragment_unnamed_161) * fragment_unnamed_173.y;
precise float fragment_unnamed_303 = mad(fragment_input_3.z, fragment_unnamed_291, fragment_unnamed_162) * fragment_unnamed_173.z;
fragment_output_0.x = fragment_unnamed_301;
fragment_output_0.y = fragment_unnamed_302;
fragment_output_0.z = fragment_unnamed_303;
fragment_output_0.w = fragment_unnamed_173.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float4 fragment_unnamed_176 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_270;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_271;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_217 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_218 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_219 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_220 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_245 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_246 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_247 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_248 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_271 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_217, fragment_unnamed_218), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_219, fragment_unnamed_220), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_245, fragment_unnamed_246), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_247, fragment_unnamed_248), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_313;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_325 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_326 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_335 = (-0.0f) - fragment_unnamed_325;
precise float fragment_unnamed_336 = (-0.0f) - fragment_unnamed_326;
float fragment_unnamed_337 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_335);
float fragment_unnamed_338 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_336);
precise float fragment_unnamed_339 = fragment_unnamed_337 + 0.5f;
precise float fragment_unnamed_340 = fragment_unnamed_337 + 1.0f;
precise float fragment_unnamed_341 = fragment_unnamed_338 + 0.5f;
precise float fragment_unnamed_342 = fragment_unnamed_338 + 1.0f;
precise float fragment_unnamed_343 = fragment_unnamed_339 * fragment_unnamed_339;
precise float fragment_unnamed_344 = fragment_unnamed_339 * fragment_unnamed_339;
precise float fragment_unnamed_345 = fragment_unnamed_341 * fragment_unnamed_341;
precise float fragment_unnamed_346 = fragment_unnamed_341 * fragment_unnamed_341;
precise float fragment_unnamed_347 = fragment_unnamed_344 * 0.07999999821186065673828125f;
precise float fragment_unnamed_349 = fragment_unnamed_346 * 0.07999999821186065673828125f;
precise float fragment_unnamed_350 = (-0.0f) - fragment_unnamed_337;
precise float fragment_unnamed_351 = (-0.0f) - fragment_unnamed_338;
precise float fragment_unnamed_354 = (-0.0f) - fragment_unnamed_337;
precise float fragment_unnamed_355 = (-0.0f) - fragment_unnamed_338;
precise float fragment_unnamed_356 = fragment_unnamed_354 + 1.0f;
precise float fragment_unnamed_357 = fragment_unnamed_355 + 1.0f;
float fragment_unnamed_358 = min(fragment_unnamed_337, 0.0f);
float fragment_unnamed_359 = min(fragment_unnamed_338, 0.0f);
precise float fragment_unnamed_360 = (-0.0f) - fragment_unnamed_358;
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_359;
float fragment_unnamed_364 = max(fragment_unnamed_337, 0.0f);
float fragment_unnamed_365 = max(fragment_unnamed_338, 0.0f);
precise float fragment_unnamed_366 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_367 = (-0.0f) - fragment_unnamed_365;
precise float fragment_unnamed_370 = mad(fragment_unnamed_360, fragment_unnamed_358, fragment_unnamed_356) + 1.0f;
precise float fragment_unnamed_371 = mad(fragment_unnamed_361, fragment_unnamed_359, fragment_unnamed_357) + 1.0f;
precise float fragment_unnamed_372 = mad(fragment_unnamed_366, fragment_unnamed_364, fragment_unnamed_340) + 1.0f;
precise float fragment_unnamed_373 = mad(fragment_unnamed_367, fragment_unnamed_365, fragment_unnamed_342) + 1.0f;
precise float fragment_unnamed_374 = mad(fragment_unnamed_343, 0.5f, fragment_unnamed_350) * 0.1599999964237213134765625f;
precise float fragment_unnamed_376 = mad(fragment_unnamed_345, 0.5f, fragment_unnamed_351) * 0.1599999964237213134765625f;
precise float fragment_unnamed_377 = fragment_unnamed_356 * 0.1599999964237213134765625f;
precise float fragment_unnamed_378 = fragment_unnamed_357 * 0.1599999964237213134765625f;
precise float fragment_unnamed_379 = fragment_unnamed_370 * 0.1599999964237213134765625f;
precise float fragment_unnamed_380 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_381 = fragment_unnamed_372 * 0.1599999964237213134765625f;
precise float fragment_unnamed_382 = fragment_unnamed_373 * 0.1599999964237213134765625f;
precise float fragment_unnamed_383 = fragment_unnamed_340 * 0.1599999964237213134765625f;
precise float fragment_unnamed_384 = fragment_unnamed_342 * 0.1599999964237213134765625f;
precise float fragment_unnamed_385 = fragment_unnamed_381 + fragment_unnamed_379;
precise float fragment_unnamed_386 = fragment_unnamed_347 + fragment_unnamed_383;
precise float fragment_unnamed_387 = fragment_unnamed_377 + fragment_unnamed_374;
precise float fragment_unnamed_388 = fragment_unnamed_381 + fragment_unnamed_379;
precise float fragment_unnamed_389 = fragment_unnamed_376 + fragment_unnamed_378;
precise float fragment_unnamed_390 = fragment_unnamed_380 + fragment_unnamed_382;
precise float fragment_unnamed_391 = fragment_unnamed_384 + fragment_unnamed_349;
precise float fragment_unnamed_392 = fragment_unnamed_377 / fragment_unnamed_387;
precise float fragment_unnamed_393 = fragment_unnamed_381 / fragment_unnamed_388;
precise float fragment_unnamed_394 = fragment_unnamed_347 / fragment_unnamed_386;
precise float fragment_unnamed_395 = fragment_unnamed_392 + (-2.5f);
precise float fragment_unnamed_397 = fragment_unnamed_393 + (-0.5f);
precise float fragment_unnamed_399 = fragment_unnamed_394 + 1.5f;
precise float fragment_unnamed_401 = fragment_unnamed_378 / fragment_unnamed_389;
precise float fragment_unnamed_402 = fragment_unnamed_382 / fragment_unnamed_390;
precise float fragment_unnamed_403 = fragment_unnamed_349 / fragment_unnamed_391;
precise float fragment_unnamed_404 = fragment_unnamed_401 + (-2.5f);
precise float fragment_unnamed_405 = fragment_unnamed_402 + (-0.5f);
precise float fragment_unnamed_406 = fragment_unnamed_403 + 1.5f;
precise float fragment_unnamed_410 = fragment_unnamed_397 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_411 = fragment_unnamed_395 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_412 = fragment_unnamed_399 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_416 = fragment_unnamed_404 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_417 = fragment_unnamed_405 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_418 = fragment_unnamed_406 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_457 = fragment_unnamed_389 * fragment_unnamed_387;
precise float fragment_unnamed_458 = fragment_unnamed_389 * fragment_unnamed_388;
precise float fragment_unnamed_459 = fragment_unnamed_389 * fragment_unnamed_386;
precise float fragment_unnamed_460 = fragment_unnamed_390 * fragment_unnamed_387;
precise float fragment_unnamed_461 = fragment_unnamed_390 * fragment_unnamed_385;
precise float fragment_unnamed_462 = fragment_unnamed_390 * fragment_unnamed_386;
precise float fragment_unnamed_463 = fragment_unnamed_391 * fragment_unnamed_387;
precise float fragment_unnamed_464 = fragment_unnamed_391 * fragment_unnamed_388;
precise float fragment_unnamed_465 = fragment_unnamed_391 * fragment_unnamed_386;
precise float fragment_unnamed_479 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x * fragment_unnamed_458;
float fragment_unnamed_515 = mad(fragment_unnamed_463, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_462, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_461, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_460, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_459, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_457, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x, fragment_unnamed_479))))));
fragment_unnamed_313 = mad(fragment_unnamed_465, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_464, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, fragment_unnamed_515));
}
else
{
float fragment_unnamed_540 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_541 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_550 = (-0.0f) - fragment_unnamed_540;
precise float fragment_unnamed_551 = (-0.0f) - fragment_unnamed_541;
float fragment_unnamed_552 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_550);
float fragment_unnamed_553 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_551);
precise float fragment_unnamed_554 = fragment_unnamed_552 + 0.5f;
precise float fragment_unnamed_555 = fragment_unnamed_552 + 1.0f;
precise float fragment_unnamed_556 = fragment_unnamed_553 + 0.5f;
precise float fragment_unnamed_557 = fragment_unnamed_553 + 1.0f;
precise float fragment_unnamed_558 = fragment_unnamed_554 * fragment_unnamed_554;
precise float fragment_unnamed_559 = fragment_unnamed_554 * fragment_unnamed_554;
precise float fragment_unnamed_560 = fragment_unnamed_556 * fragment_unnamed_556;
precise float fragment_unnamed_561 = fragment_unnamed_556 * fragment_unnamed_556;
precise float fragment_unnamed_562 = fragment_unnamed_559 * 0.040816001594066619873046875f;
precise float fragment_unnamed_564 = fragment_unnamed_561 * 0.040816001594066619873046875f;
precise float fragment_unnamed_565 = (-0.0f) - fragment_unnamed_552;
precise float fragment_unnamed_566 = (-0.0f) - fragment_unnamed_553;
precise float fragment_unnamed_569 = (-0.0f) - fragment_unnamed_552;
precise float fragment_unnamed_570 = (-0.0f) - fragment_unnamed_553;
precise float fragment_unnamed_571 = fragment_unnamed_569 + 1.0f;
precise float fragment_unnamed_572 = fragment_unnamed_570 + 1.0f;
float fragment_unnamed_573 = min(fragment_unnamed_552, 0.0f);
float fragment_unnamed_574 = min(fragment_unnamed_553, 0.0f);
precise float fragment_unnamed_575 = (-0.0f) - fragment_unnamed_573;
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_574;
float fragment_unnamed_579 = max(fragment_unnamed_552, 0.0f);
float fragment_unnamed_580 = max(fragment_unnamed_553, 0.0f);
precise float fragment_unnamed_581 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_582 = (-0.0f) - fragment_unnamed_580;
precise float fragment_unnamed_585 = mad(fragment_unnamed_575, fragment_unnamed_573, fragment_unnamed_571) + 2.0f;
precise float fragment_unnamed_586 = mad(fragment_unnamed_576, fragment_unnamed_574, fragment_unnamed_572) + 2.0f;
precise float fragment_unnamed_587 = mad(fragment_unnamed_581, fragment_unnamed_579, fragment_unnamed_555) + 2.0f;
precise float fragment_unnamed_588 = mad(fragment_unnamed_582, fragment_unnamed_580, fragment_unnamed_557) + 2.0f;
precise float fragment_unnamed_589 = fragment_unnamed_587 * 0.08163200318813323974609375f;
precise float fragment_unnamed_591 = mad(fragment_unnamed_560, 0.5f, fragment_unnamed_566) * 0.08163200318813323974609375f;
precise float fragment_unnamed_592 = mad(fragment_unnamed_558, 0.5f, fragment_unnamed_565) * 0.08163200318813323974609375f;
precise float fragment_unnamed_593 = fragment_unnamed_588 * 0.08163200318813323974609375f;
precise float fragment_unnamed_594 = fragment_unnamed_585 * 0.08163200318813323974609375f;
precise float fragment_unnamed_595 = fragment_unnamed_586 * 0.08163200318813323974609375f;
float fragment_unnamed_600 = mad(fragment_unnamed_552, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_601 = mad(fragment_unnamed_552, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_602 = fragment_unnamed_600 + fragment_unnamed_592;
precise float fragment_unnamed_603 = fragment_unnamed_594 + mad(fragment_unnamed_552, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_604 = fragment_unnamed_601 + fragment_unnamed_589;
precise float fragment_unnamed_605 = fragment_unnamed_562 + mad(fragment_unnamed_552, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_608 = mad(fragment_unnamed_553, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_609 = mad(fragment_unnamed_553, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_610 = fragment_unnamed_608 + fragment_unnamed_591;
precise float fragment_unnamed_611 = fragment_unnamed_595 + mad(fragment_unnamed_553, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_612 = fragment_unnamed_609 + fragment_unnamed_593;
precise float fragment_unnamed_613 = fragment_unnamed_564 + mad(fragment_unnamed_553, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_614 = fragment_unnamed_600 / fragment_unnamed_602;
precise float fragment_unnamed_615 = fragment_unnamed_594 / fragment_unnamed_603;
precise float fragment_unnamed_616 = fragment_unnamed_601 / fragment_unnamed_604;
precise float fragment_unnamed_617 = fragment_unnamed_562 / fragment_unnamed_605;
precise float fragment_unnamed_618 = fragment_unnamed_614 + (-3.5f);
precise float fragment_unnamed_620 = fragment_unnamed_615 + (-1.5f);
precise float fragment_unnamed_622 = fragment_unnamed_616 + 0.5f;
precise float fragment_unnamed_623 = fragment_unnamed_617 + 2.5f;
precise float fragment_unnamed_625 = fragment_unnamed_608 / fragment_unnamed_610;
precise float fragment_unnamed_626 = fragment_unnamed_595 / fragment_unnamed_611;
precise float fragment_unnamed_627 = fragment_unnamed_609 / fragment_unnamed_612;
precise float fragment_unnamed_628 = fragment_unnamed_564 / fragment_unnamed_613;
precise float fragment_unnamed_629 = fragment_unnamed_625 + (-3.5f);
precise float fragment_unnamed_630 = fragment_unnamed_626 + (-1.5f);
precise float fragment_unnamed_631 = fragment_unnamed_627 + 0.5f;
precise float fragment_unnamed_632 = fragment_unnamed_628 + 2.5f;
precise float fragment_unnamed_636 = fragment_unnamed_623 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_637 = fragment_unnamed_618 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_638 = fragment_unnamed_620 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_639 = fragment_unnamed_622 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_643 = fragment_unnamed_629 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_644 = fragment_unnamed_632 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_645 = fragment_unnamed_630 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_646 = fragment_unnamed_631 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_723 = fragment_unnamed_610 * fragment_unnamed_602;
precise float fragment_unnamed_724 = fragment_unnamed_610 * fragment_unnamed_603;
precise float fragment_unnamed_725 = fragment_unnamed_610 * fragment_unnamed_604;
precise float fragment_unnamed_726 = fragment_unnamed_610 * fragment_unnamed_605;
precise float fragment_unnamed_727 = fragment_unnamed_611 * fragment_unnamed_602;
precise float fragment_unnamed_728 = fragment_unnamed_611 * fragment_unnamed_603;
precise float fragment_unnamed_729 = fragment_unnamed_611 * fragment_unnamed_604;
precise float fragment_unnamed_730 = fragment_unnamed_611 * fragment_unnamed_605;
precise float fragment_unnamed_731 = fragment_unnamed_612 * fragment_unnamed_602;
precise float fragment_unnamed_732 = fragment_unnamed_612 * fragment_unnamed_603;
precise float fragment_unnamed_733 = fragment_unnamed_612 * fragment_unnamed_604;
precise float fragment_unnamed_734 = fragment_unnamed_612 * fragment_unnamed_605;
precise float fragment_unnamed_735 = fragment_unnamed_613 * fragment_unnamed_602;
precise float fragment_unnamed_736 = fragment_unnamed_613 * fragment_unnamed_603;
precise float fragment_unnamed_737 = fragment_unnamed_613 * fragment_unnamed_604;
precise float fragment_unnamed_738 = fragment_unnamed_613 * fragment_unnamed_605;
precise float fragment_unnamed_752 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x * fragment_unnamed_724;
float fragment_unnamed_788 = mad(fragment_unnamed_729, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_728, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_727, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_726, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_725, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_723, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, fragment_unnamed_752))))));
float fragment_unnamed_830 = mad(fragment_unnamed_735, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_734, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_733, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_732, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_731, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_730, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, fragment_unnamed_788))))));
fragment_unnamed_313 = mad(fragment_unnamed_738, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_737, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_736, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, fragment_unnamed_830)));
}
fragment_unnamed_271 = fragment_unnamed_313;
}
fragment_unnamed_270 = fragment_unnamed_271;
}
else
{
fragment_unnamed_270 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_275 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_276 = fragment_unnamed_275 + 1.0f;
float fragment_unnamed_294 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_270, fragment_uniform_buffer_2[27u].x, fragment_unnamed_276)));
precise float fragment_unnamed_304 = mad(fragment_input_3.x, fragment_unnamed_294, fragment_unnamed_163) * fragment_unnamed_176.x;
precise float fragment_unnamed_305 = mad(fragment_input_3.y, fragment_unnamed_294, fragment_unnamed_164) * fragment_unnamed_176.y;
precise float fragment_unnamed_306 = mad(fragment_input_3.z, fragment_unnamed_294, fragment_unnamed_165) * fragment_unnamed_176.z;
fragment_output_0.x = fragment_unnamed_304;
fragment_output_0.y = fragment_unnamed_305;
fragment_output_0.z = fragment_unnamed_306;
fragment_output_0.w = fragment_unnamed_176.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_64 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_69 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_70 = fragment_input_5.x + fragment_unnamed_64;
precise float fragment_unnamed_71 = fragment_input_5.y + fragment_unnamed_67;
precise float fragment_unnamed_72 = fragment_input_5.z + fragment_unnamed_69;
precise float fragment_unnamed_83 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_85 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_87 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_88 = fragment_input_5.x + fragment_unnamed_83;
precise float fragment_unnamed_89 = fragment_input_5.y + fragment_unnamed_85;
precise float fragment_unnamed_90 = fragment_input_5.z + fragment_unnamed_87;
precise float fragment_unnamed_101 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_103 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_105 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_106 = fragment_input_5.x + fragment_unnamed_101;
precise float fragment_unnamed_107 = fragment_input_5.y + fragment_unnamed_103;
precise float fragment_unnamed_108 = fragment_input_5.z + fragment_unnamed_105;
precise float fragment_unnamed_119 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_121 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_123 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_124 = fragment_input_5.x + fragment_unnamed_119;
precise float fragment_unnamed_125 = fragment_input_5.y + fragment_unnamed_121;
precise float fragment_unnamed_126 = fragment_input_5.z + fragment_unnamed_123;
bool fragment_unnamed_147 = dot(float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72), float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_148 = dot(float3(fragment_unnamed_88, fragment_unnamed_89, fragment_unnamed_90), float3(fragment_unnamed_88, fragment_unnamed_89, fragment_unnamed_90)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_149 = dot(float3(fragment_unnamed_106, fragment_unnamed_107, fragment_unnamed_108), float3(fragment_unnamed_106, fragment_unnamed_107, fragment_unnamed_108)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_173 = asfloat(fragment_unnamed_147 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_148 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_174 = asfloat(fragment_unnamed_148 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_149 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_175 = asfloat(fragment_unnamed_149 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_124, fragment_unnamed_125, fragment_unnamed_126), float3(fragment_unnamed_124, fragment_unnamed_125, fragment_unnamed_126)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_188 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_147 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_173, 0.0f), max(fragment_unnamed_174, 0.0f), max(fragment_unnamed_175, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_189 = fragment_unnamed_188 + 4.0f;
uint fragment_unnamed_191 = uint(fragment_unnamed_189) << 2u;
uint fragment_unnamed_194 = fragment_unnamed_191 + 1u;
precise float fragment_unnamed_200 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].x;
precise float fragment_unnamed_201 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].y;
precise float fragment_unnamed_202 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].z;
uint fragment_unnamed_213 = fragment_unnamed_191 + 2u;
uint fragment_unnamed_224 = fragment_unnamed_191 + 3u;
precise float fragment_unnamed_231 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].x, fragment_input_5.x, fragment_unnamed_200)) + fragment_uniform_buffer_2[fragment_unnamed_224].x;
precise float fragment_unnamed_232 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].y, fragment_input_5.x, fragment_unnamed_201)) + fragment_uniform_buffer_2[fragment_unnamed_224].y;
precise float fragment_unnamed_233 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].z, fragment_input_5.x, fragment_unnamed_202)) + fragment_uniform_buffer_2[fragment_unnamed_224].z;
float fragment_unnamed_240 = asfloat(1065353216u);
precise float fragment_unnamed_282 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_283 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_284 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_285 = fragment_input_4.x * fragment_input_4.z;
precise float fragment_unnamed_320 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_325 = (-0.0f) - fragment_unnamed_320;
float fragment_unnamed_326 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_325);
precise float fragment_unnamed_336 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
precise float fragment_unnamed_337 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
precise float fragment_unnamed_338 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
float4 fragment_unnamed_349 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_417;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_418;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_377 = fragment_unnamed_231 + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_378 = fragment_unnamed_232 + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_379 = fragment_unnamed_231 + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_380 = fragment_unnamed_232 + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_397 = fragment_unnamed_231 + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_398 = fragment_unnamed_232 + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_399 = fragment_unnamed_231 + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_400 = fragment_unnamed_232 + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_418 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_377, fragment_unnamed_378), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_379, fragment_unnamed_380), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_397, fragment_unnamed_398), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_399, fragment_unnamed_400), fragment_unnamed_233).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_454;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_462 = floor(mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_463 = floor(mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_468 = (-0.0f) - fragment_unnamed_462;
precise float fragment_unnamed_469 = (-0.0f) - fragment_unnamed_463;
float fragment_unnamed_470 = mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, fragment_unnamed_468);
float fragment_unnamed_471 = mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, fragment_unnamed_469);
precise float fragment_unnamed_472 = fragment_unnamed_470 + 0.5f;
precise float fragment_unnamed_473 = fragment_unnamed_470 + 1.0f;
precise float fragment_unnamed_474 = fragment_unnamed_471 + 0.5f;
precise float fragment_unnamed_475 = fragment_unnamed_471 + 1.0f;
precise float fragment_unnamed_476 = fragment_unnamed_472 * fragment_unnamed_472;
precise float fragment_unnamed_477 = fragment_unnamed_472 * fragment_unnamed_472;
precise float fragment_unnamed_478 = fragment_unnamed_474 * fragment_unnamed_474;
precise float fragment_unnamed_479 = fragment_unnamed_474 * fragment_unnamed_474;
precise float fragment_unnamed_480 = fragment_unnamed_477 * 0.07999999821186065673828125f;
precise float fragment_unnamed_482 = fragment_unnamed_479 * 0.07999999821186065673828125f;
precise float fragment_unnamed_483 = (-0.0f) - fragment_unnamed_470;
precise float fragment_unnamed_484 = (-0.0f) - fragment_unnamed_471;
precise float fragment_unnamed_487 = (-0.0f) - fragment_unnamed_470;
precise float fragment_unnamed_488 = (-0.0f) - fragment_unnamed_471;
precise float fragment_unnamed_489 = fragment_unnamed_487 + 1.0f;
precise float fragment_unnamed_490 = fragment_unnamed_488 + 1.0f;
float fragment_unnamed_491 = min(fragment_unnamed_470, 0.0f);
float fragment_unnamed_492 = min(fragment_unnamed_471, 0.0f);
precise float fragment_unnamed_493 = (-0.0f) - fragment_unnamed_491;
precise float fragment_unnamed_494 = (-0.0f) - fragment_unnamed_492;
float fragment_unnamed_497 = max(fragment_unnamed_470, 0.0f);
float fragment_unnamed_498 = max(fragment_unnamed_471, 0.0f);
precise float fragment_unnamed_499 = (-0.0f) - fragment_unnamed_497;
precise float fragment_unnamed_500 = (-0.0f) - fragment_unnamed_498;
precise float fragment_unnamed_503 = mad(fragment_unnamed_493, fragment_unnamed_491, fragment_unnamed_489) + 1.0f;
precise float fragment_unnamed_504 = mad(fragment_unnamed_494, fragment_unnamed_492, fragment_unnamed_490) + 1.0f;
precise float fragment_unnamed_505 = mad(fragment_unnamed_499, fragment_unnamed_497, fragment_unnamed_473) + 1.0f;
precise float fragment_unnamed_506 = mad(fragment_unnamed_500, fragment_unnamed_498, fragment_unnamed_475) + 1.0f;
precise float fragment_unnamed_507 = mad(fragment_unnamed_476, 0.5f, fragment_unnamed_483) * 0.1599999964237213134765625f;
precise float fragment_unnamed_509 = mad(fragment_unnamed_478, 0.5f, fragment_unnamed_484) * 0.1599999964237213134765625f;
precise float fragment_unnamed_510 = fragment_unnamed_489 * 0.1599999964237213134765625f;
precise float fragment_unnamed_511 = fragment_unnamed_490 * 0.1599999964237213134765625f;
precise float fragment_unnamed_512 = fragment_unnamed_503 * 0.1599999964237213134765625f;
precise float fragment_unnamed_513 = fragment_unnamed_504 * 0.1599999964237213134765625f;
precise float fragment_unnamed_514 = fragment_unnamed_505 * 0.1599999964237213134765625f;
precise float fragment_unnamed_515 = fragment_unnamed_506 * 0.1599999964237213134765625f;
precise float fragment_unnamed_516 = fragment_unnamed_473 * 0.1599999964237213134765625f;
precise float fragment_unnamed_517 = fragment_unnamed_475 * 0.1599999964237213134765625f;
precise float fragment_unnamed_518 = fragment_unnamed_514 + fragment_unnamed_512;
precise float fragment_unnamed_519 = fragment_unnamed_480 + fragment_unnamed_516;
precise float fragment_unnamed_520 = fragment_unnamed_510 + fragment_unnamed_507;
precise float fragment_unnamed_521 = fragment_unnamed_514 + fragment_unnamed_512;
precise float fragment_unnamed_522 = fragment_unnamed_509 + fragment_unnamed_511;
precise float fragment_unnamed_523 = fragment_unnamed_513 + fragment_unnamed_515;
precise float fragment_unnamed_524 = fragment_unnamed_517 + fragment_unnamed_482;
precise float fragment_unnamed_525 = fragment_unnamed_510 / fragment_unnamed_520;
precise float fragment_unnamed_526 = fragment_unnamed_514 / fragment_unnamed_521;
precise float fragment_unnamed_527 = fragment_unnamed_480 / fragment_unnamed_519;
precise float fragment_unnamed_528 = fragment_unnamed_525 + (-2.5f);
precise float fragment_unnamed_530 = fragment_unnamed_526 + (-0.5f);
precise float fragment_unnamed_532 = fragment_unnamed_527 + 1.5f;
precise float fragment_unnamed_534 = fragment_unnamed_511 / fragment_unnamed_522;
precise float fragment_unnamed_535 = fragment_unnamed_515 / fragment_unnamed_523;
precise float fragment_unnamed_536 = fragment_unnamed_482 / fragment_unnamed_524;
precise float fragment_unnamed_537 = fragment_unnamed_534 + (-2.5f);
precise float fragment_unnamed_538 = fragment_unnamed_535 + (-0.5f);
precise float fragment_unnamed_539 = fragment_unnamed_536 + 1.5f;
precise float fragment_unnamed_543 = fragment_unnamed_530 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_544 = fragment_unnamed_528 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_545 = fragment_unnamed_532 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_549 = fragment_unnamed_537 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_550 = fragment_unnamed_538 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_551 = fragment_unnamed_539 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_590 = fragment_unnamed_522 * fragment_unnamed_520;
precise float fragment_unnamed_591 = fragment_unnamed_522 * fragment_unnamed_521;
precise float fragment_unnamed_592 = fragment_unnamed_522 * fragment_unnamed_519;
precise float fragment_unnamed_593 = fragment_unnamed_523 * fragment_unnamed_520;
precise float fragment_unnamed_594 = fragment_unnamed_523 * fragment_unnamed_518;
precise float fragment_unnamed_595 = fragment_unnamed_523 * fragment_unnamed_519;
precise float fragment_unnamed_596 = fragment_unnamed_524 * fragment_unnamed_520;
precise float fragment_unnamed_597 = fragment_unnamed_524 * fragment_unnamed_521;
precise float fragment_unnamed_598 = fragment_unnamed_524 * fragment_unnamed_519;
precise float fragment_unnamed_608 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x * fragment_unnamed_591;
float fragment_unnamed_634 = mad(fragment_unnamed_596, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_595, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_594, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_593, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_592, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_590, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x, fragment_unnamed_608))))));
fragment_unnamed_454 = mad(fragment_unnamed_598, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_597, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, fragment_unnamed_634));
}
else
{
float fragment_unnamed_651 = floor(mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_652 = floor(mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_657 = (-0.0f) - fragment_unnamed_651;
precise float fragment_unnamed_658 = (-0.0f) - fragment_unnamed_652;
float fragment_unnamed_659 = mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, fragment_unnamed_657);
float fragment_unnamed_660 = mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, fragment_unnamed_658);
precise float fragment_unnamed_661 = fragment_unnamed_659 + 0.5f;
precise float fragment_unnamed_662 = fragment_unnamed_659 + 1.0f;
precise float fragment_unnamed_663 = fragment_unnamed_660 + 0.5f;
precise float fragment_unnamed_664 = fragment_unnamed_660 + 1.0f;
precise float fragment_unnamed_665 = fragment_unnamed_661 * fragment_unnamed_661;
precise float fragment_unnamed_666 = fragment_unnamed_661 * fragment_unnamed_661;
precise float fragment_unnamed_667 = fragment_unnamed_663 * fragment_unnamed_663;
precise float fragment_unnamed_668 = fragment_unnamed_663 * fragment_unnamed_663;
precise float fragment_unnamed_669 = fragment_unnamed_666 * 0.040816001594066619873046875f;
precise float fragment_unnamed_671 = fragment_unnamed_668 * 0.040816001594066619873046875f;
precise float fragment_unnamed_672 = (-0.0f) - fragment_unnamed_659;
precise float fragment_unnamed_673 = (-0.0f) - fragment_unnamed_660;
precise float fragment_unnamed_676 = (-0.0f) - fragment_unnamed_659;
precise float fragment_unnamed_677 = (-0.0f) - fragment_unnamed_660;
precise float fragment_unnamed_678 = fragment_unnamed_676 + 1.0f;
precise float fragment_unnamed_679 = fragment_unnamed_677 + 1.0f;
float fragment_unnamed_680 = min(fragment_unnamed_659, 0.0f);
float fragment_unnamed_681 = min(fragment_unnamed_660, 0.0f);
precise float fragment_unnamed_682 = (-0.0f) - fragment_unnamed_680;
precise float fragment_unnamed_683 = (-0.0f) - fragment_unnamed_681;
float fragment_unnamed_686 = max(fragment_unnamed_659, 0.0f);
float fragment_unnamed_687 = max(fragment_unnamed_660, 0.0f);
precise float fragment_unnamed_688 = (-0.0f) - fragment_unnamed_686;
precise float fragment_unnamed_689 = (-0.0f) - fragment_unnamed_687;
precise float fragment_unnamed_692 = mad(fragment_unnamed_682, fragment_unnamed_680, fragment_unnamed_678) + 2.0f;
precise float fragment_unnamed_693 = mad(fragment_unnamed_683, fragment_unnamed_681, fragment_unnamed_679) + 2.0f;
precise float fragment_unnamed_694 = mad(fragment_unnamed_688, fragment_unnamed_686, fragment_unnamed_662) + 2.0f;
precise float fragment_unnamed_695 = mad(fragment_unnamed_689, fragment_unnamed_687, fragment_unnamed_664) + 2.0f;
precise float fragment_unnamed_696 = fragment_unnamed_694 * 0.08163200318813323974609375f;
precise float fragment_unnamed_698 = mad(fragment_unnamed_667, 0.5f, fragment_unnamed_673) * 0.08163200318813323974609375f;
precise float fragment_unnamed_699 = mad(fragment_unnamed_665, 0.5f, fragment_unnamed_672) * 0.08163200318813323974609375f;
precise float fragment_unnamed_700 = fragment_unnamed_695 * 0.08163200318813323974609375f;
precise float fragment_unnamed_701 = fragment_unnamed_692 * 0.08163200318813323974609375f;
precise float fragment_unnamed_702 = fragment_unnamed_693 * 0.08163200318813323974609375f;
float fragment_unnamed_707 = mad(fragment_unnamed_659, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_708 = mad(fragment_unnamed_659, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_709 = fragment_unnamed_707 + fragment_unnamed_699;
precise float fragment_unnamed_710 = fragment_unnamed_701 + mad(fragment_unnamed_659, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_711 = fragment_unnamed_708 + fragment_unnamed_696;
precise float fragment_unnamed_712 = fragment_unnamed_669 + mad(fragment_unnamed_659, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_715 = mad(fragment_unnamed_660, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_716 = mad(fragment_unnamed_660, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_717 = fragment_unnamed_715 + fragment_unnamed_698;
precise float fragment_unnamed_718 = fragment_unnamed_702 + mad(fragment_unnamed_660, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_719 = fragment_unnamed_716 + fragment_unnamed_700;
precise float fragment_unnamed_720 = fragment_unnamed_671 + mad(fragment_unnamed_660, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_721 = fragment_unnamed_707 / fragment_unnamed_709;
precise float fragment_unnamed_722 = fragment_unnamed_701 / fragment_unnamed_710;
precise float fragment_unnamed_723 = fragment_unnamed_708 / fragment_unnamed_711;
precise float fragment_unnamed_724 = fragment_unnamed_669 / fragment_unnamed_712;
precise float fragment_unnamed_725 = fragment_unnamed_721 + (-3.5f);
precise float fragment_unnamed_727 = fragment_unnamed_722 + (-1.5f);
precise float fragment_unnamed_729 = fragment_unnamed_723 + 0.5f;
precise float fragment_unnamed_730 = fragment_unnamed_724 + 2.5f;
precise float fragment_unnamed_732 = fragment_unnamed_715 / fragment_unnamed_717;
precise float fragment_unnamed_733 = fragment_unnamed_702 / fragment_unnamed_718;
precise float fragment_unnamed_734 = fragment_unnamed_716 / fragment_unnamed_719;
precise float fragment_unnamed_735 = fragment_unnamed_671 / fragment_unnamed_720;
precise float fragment_unnamed_736 = fragment_unnamed_732 + (-3.5f);
precise float fragment_unnamed_737 = fragment_unnamed_733 + (-1.5f);
precise float fragment_unnamed_738 = fragment_unnamed_734 + 0.5f;
precise float fragment_unnamed_739 = fragment_unnamed_735 + 2.5f;
precise float fragment_unnamed_743 = fragment_unnamed_730 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_744 = fragment_unnamed_725 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_745 = fragment_unnamed_727 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_746 = fragment_unnamed_729 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_750 = fragment_unnamed_736 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_751 = fragment_unnamed_739 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_737 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_753 = fragment_unnamed_738 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_830 = fragment_unnamed_717 * fragment_unnamed_709;
precise float fragment_unnamed_831 = fragment_unnamed_717 * fragment_unnamed_710;
precise float fragment_unnamed_832 = fragment_unnamed_717 * fragment_unnamed_711;
precise float fragment_unnamed_833 = fragment_unnamed_717 * fragment_unnamed_712;
precise float fragment_unnamed_834 = fragment_unnamed_718 * fragment_unnamed_709;
precise float fragment_unnamed_835 = fragment_unnamed_718 * fragment_unnamed_710;
precise float fragment_unnamed_836 = fragment_unnamed_718 * fragment_unnamed_711;
precise float fragment_unnamed_837 = fragment_unnamed_718 * fragment_unnamed_712;
precise float fragment_unnamed_838 = fragment_unnamed_719 * fragment_unnamed_709;
precise float fragment_unnamed_839 = fragment_unnamed_719 * fragment_unnamed_710;
precise float fragment_unnamed_840 = fragment_unnamed_719 * fragment_unnamed_711;
precise float fragment_unnamed_841 = fragment_unnamed_719 * fragment_unnamed_712;
precise float fragment_unnamed_842 = fragment_unnamed_720 * fragment_unnamed_709;
precise float fragment_unnamed_843 = fragment_unnamed_720 * fragment_unnamed_710;
precise float fragment_unnamed_844 = fragment_unnamed_720 * fragment_unnamed_711;
precise float fragment_unnamed_845 = fragment_unnamed_720 * fragment_unnamed_712;
precise float fragment_unnamed_855 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x * fragment_unnamed_831;
float fragment_unnamed_881 = mad(fragment_unnamed_836, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_835, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_834, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_833, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_832, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_830, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, fragment_unnamed_855))))));
float fragment_unnamed_911 = mad(fragment_unnamed_842, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_841, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_840, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_839, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_838, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_837, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, fragment_unnamed_881))))));
fragment_unnamed_454 = mad(fragment_unnamed_845, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_844, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_843, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, fragment_unnamed_911)));
}
fragment_unnamed_418 = fragment_unnamed_454;
}
fragment_unnamed_417 = fragment_unnamed_418;
}
else
{
fragment_unnamed_417 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_unnamed_233).xxxx.x;
}
precise float fragment_unnamed_422 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_423 = fragment_unnamed_422 + 1.0f;
float fragment_unnamed_436 = asfloat(((((fragment_unnamed_233 >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_unnamed_233) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_417, fragment_uniform_buffer_2[27u].x, fragment_unnamed_423)));
precise float fragment_unnamed_446 = mad(fragment_input_3.x, fragment_unnamed_436, fragment_unnamed_336) * fragment_unnamed_349.x;
precise float fragment_unnamed_447 = mad(fragment_input_3.y, fragment_unnamed_436, fragment_unnamed_337) * fragment_unnamed_349.y;
precise float fragment_unnamed_448 = mad(fragment_input_3.z, fragment_unnamed_436, fragment_unnamed_338) * fragment_unnamed_349.z;
fragment_output_0.x = fragment_unnamed_446;
fragment_output_0.y = fragment_unnamed_447;
fragment_output_0.z = fragment_unnamed_448;
fragment_output_0.w = fragment_unnamed_349.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef _LIGHT_COOKIES
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static uint fragment_input_7;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_7 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_70 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_72 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_73 = fragment_input_5.x + fragment_unnamed_67;
precise float fragment_unnamed_74 = fragment_input_5.y + fragment_unnamed_70;
precise float fragment_unnamed_75 = fragment_input_5.z + fragment_unnamed_72;
precise float fragment_unnamed_86 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_88 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_90 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_91 = fragment_input_5.x + fragment_unnamed_86;
precise float fragment_unnamed_92 = fragment_input_5.y + fragment_unnamed_88;
precise float fragment_unnamed_93 = fragment_input_5.z + fragment_unnamed_90;
precise float fragment_unnamed_104 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_106 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_108 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_109 = fragment_input_5.x + fragment_unnamed_104;
precise float fragment_unnamed_110 = fragment_input_5.y + fragment_unnamed_106;
precise float fragment_unnamed_111 = fragment_input_5.z + fragment_unnamed_108;
precise float fragment_unnamed_122 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_124 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_126 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_127 = fragment_input_5.x + fragment_unnamed_122;
precise float fragment_unnamed_128 = fragment_input_5.y + fragment_unnamed_124;
precise float fragment_unnamed_129 = fragment_input_5.z + fragment_unnamed_126;
bool fragment_unnamed_150 = dot(float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75), float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_151 = dot(float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93), float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_152 = dot(float3(fragment_unnamed_109, fragment_unnamed_110, fragment_unnamed_111), float3(fragment_unnamed_109, fragment_unnamed_110, fragment_unnamed_111)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_176 = asfloat(fragment_unnamed_150 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_151 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_177 = asfloat(fragment_unnamed_151 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_152 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_178 = asfloat(fragment_unnamed_152 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_127, fragment_unnamed_128, fragment_unnamed_129), float3(fragment_unnamed_127, fragment_unnamed_128, fragment_unnamed_129)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_191 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_150 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_176, 0.0f), max(fragment_unnamed_177, 0.0f), max(fragment_unnamed_178, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_192 = fragment_unnamed_191 + 4.0f;
uint fragment_unnamed_194 = uint(fragment_unnamed_192) << 2u;
uint fragment_unnamed_197 = fragment_unnamed_194 + 1u;
precise float fragment_unnamed_203 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].x;
precise float fragment_unnamed_204 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].y;
precise float fragment_unnamed_205 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].z;
uint fragment_unnamed_216 = fragment_unnamed_194 + 2u;
uint fragment_unnamed_227 = fragment_unnamed_194 + 3u;
precise float fragment_unnamed_234 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].x, fragment_input_5.x, fragment_unnamed_203)) + fragment_uniform_buffer_2[fragment_unnamed_227].x;
precise float fragment_unnamed_235 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].y, fragment_input_5.x, fragment_unnamed_204)) + fragment_uniform_buffer_2[fragment_unnamed_227].y;
precise float fragment_unnamed_236 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].z, fragment_input_5.x, fragment_unnamed_205)) + fragment_uniform_buffer_2[fragment_unnamed_227].z;
float fragment_unnamed_243 = asfloat(1065353216u);
precise float fragment_unnamed_285 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_286 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_287 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_288 = fragment_input_4.x * fragment_input_4.z;
precise float fragment_unnamed_323 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_328 = (-0.0f) - fragment_unnamed_323;
float fragment_unnamed_329 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_328);
precise float fragment_unnamed_339 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
precise float fragment_unnamed_340 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
precise float fragment_unnamed_341 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
float4 fragment_unnamed_352 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_420;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_421;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_380 = fragment_unnamed_234 + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_381 = fragment_unnamed_235 + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_382 = fragment_unnamed_234 + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_383 = fragment_unnamed_235 + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_400 = fragment_unnamed_234 + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_401 = fragment_unnamed_235 + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_402 = fragment_unnamed_234 + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_403 = fragment_unnamed_235 + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_421 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_380, fragment_unnamed_381), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_382, fragment_unnamed_383), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_400, fragment_unnamed_401), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_402, fragment_unnamed_403), fragment_unnamed_236).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_457;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_465 = floor(mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_466 = floor(mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_471 = (-0.0f) - fragment_unnamed_465;
precise float fragment_unnamed_472 = (-0.0f) - fragment_unnamed_466;
float fragment_unnamed_473 = mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, fragment_unnamed_471);
float fragment_unnamed_474 = mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, fragment_unnamed_472);
precise float fragment_unnamed_475 = fragment_unnamed_473 + 0.5f;
precise float fragment_unnamed_476 = fragment_unnamed_473 + 1.0f;
precise float fragment_unnamed_477 = fragment_unnamed_474 + 0.5f;
precise float fragment_unnamed_478 = fragment_unnamed_474 + 1.0f;
precise float fragment_unnamed_479 = fragment_unnamed_475 * fragment_unnamed_475;
precise float fragment_unnamed_480 = fragment_unnamed_475 * fragment_unnamed_475;
precise float fragment_unnamed_481 = fragment_unnamed_477 * fragment_unnamed_477;
precise float fragment_unnamed_482 = fragment_unnamed_477 * fragment_unnamed_477;
precise float fragment_unnamed_483 = fragment_unnamed_480 * 0.07999999821186065673828125f;
precise float fragment_unnamed_485 = fragment_unnamed_482 * 0.07999999821186065673828125f;
precise float fragment_unnamed_486 = (-0.0f) - fragment_unnamed_473;
precise float fragment_unnamed_487 = (-0.0f) - fragment_unnamed_474;
precise float fragment_unnamed_490 = (-0.0f) - fragment_unnamed_473;
precise float fragment_unnamed_491 = (-0.0f) - fragment_unnamed_474;
precise float fragment_unnamed_492 = fragment_unnamed_490 + 1.0f;
precise float fragment_unnamed_493 = fragment_unnamed_491 + 1.0f;
float fragment_unnamed_494 = min(fragment_unnamed_473, 0.0f);
float fragment_unnamed_495 = min(fragment_unnamed_474, 0.0f);
precise float fragment_unnamed_496 = (-0.0f) - fragment_unnamed_494;
precise float fragment_unnamed_497 = (-0.0f) - fragment_unnamed_495;
float fragment_unnamed_500 = max(fragment_unnamed_473, 0.0f);
float fragment_unnamed_501 = max(fragment_unnamed_474, 0.0f);
precise float fragment_unnamed_502 = (-0.0f) - fragment_unnamed_500;
precise float fragment_unnamed_503 = (-0.0f) - fragment_unnamed_501;
precise float fragment_unnamed_506 = mad(fragment_unnamed_496, fragment_unnamed_494, fragment_unnamed_492) + 1.0f;
precise float fragment_unnamed_507 = mad(fragment_unnamed_497, fragment_unnamed_495, fragment_unnamed_493) + 1.0f;
precise float fragment_unnamed_508 = mad(fragment_unnamed_502, fragment_unnamed_500, fragment_unnamed_476) + 1.0f;
precise float fragment_unnamed_509 = mad(fragment_unnamed_503, fragment_unnamed_501, fragment_unnamed_478) + 1.0f;
precise float fragment_unnamed_510 = mad(fragment_unnamed_479, 0.5f, fragment_unnamed_486) * 0.1599999964237213134765625f;
precise float fragment_unnamed_512 = mad(fragment_unnamed_481, 0.5f, fragment_unnamed_487) * 0.1599999964237213134765625f;
precise float fragment_unnamed_513 = fragment_unnamed_492 * 0.1599999964237213134765625f;
precise float fragment_unnamed_514 = fragment_unnamed_493 * 0.1599999964237213134765625f;
precise float fragment_unnamed_515 = fragment_unnamed_506 * 0.1599999964237213134765625f;
precise float fragment_unnamed_516 = fragment_unnamed_507 * 0.1599999964237213134765625f;
precise float fragment_unnamed_517 = fragment_unnamed_508 * 0.1599999964237213134765625f;
precise float fragment_unnamed_518 = fragment_unnamed_509 * 0.1599999964237213134765625f;
precise float fragment_unnamed_519 = fragment_unnamed_476 * 0.1599999964237213134765625f;
precise float fragment_unnamed_520 = fragment_unnamed_478 * 0.1599999964237213134765625f;
precise float fragment_unnamed_521 = fragment_unnamed_517 + fragment_unnamed_515;
precise float fragment_unnamed_522 = fragment_unnamed_483 + fragment_unnamed_519;
precise float fragment_unnamed_523 = fragment_unnamed_513 + fragment_unnamed_510;
precise float fragment_unnamed_524 = fragment_unnamed_517 + fragment_unnamed_515;
precise float fragment_unnamed_525 = fragment_unnamed_512 + fragment_unnamed_514;
precise float fragment_unnamed_526 = fragment_unnamed_516 + fragment_unnamed_518;
precise float fragment_unnamed_527 = fragment_unnamed_520 + fragment_unnamed_485;
precise float fragment_unnamed_528 = fragment_unnamed_513 / fragment_unnamed_523;
precise float fragment_unnamed_529 = fragment_unnamed_517 / fragment_unnamed_524;
precise float fragment_unnamed_530 = fragment_unnamed_483 / fragment_unnamed_522;
precise float fragment_unnamed_531 = fragment_unnamed_528 + (-2.5f);
precise float fragment_unnamed_533 = fragment_unnamed_529 + (-0.5f);
precise float fragment_unnamed_535 = fragment_unnamed_530 + 1.5f;
precise float fragment_unnamed_537 = fragment_unnamed_514 / fragment_unnamed_525;
precise float fragment_unnamed_538 = fragment_unnamed_518 / fragment_unnamed_526;
precise float fragment_unnamed_539 = fragment_unnamed_485 / fragment_unnamed_527;
precise float fragment_unnamed_540 = fragment_unnamed_537 + (-2.5f);
precise float fragment_unnamed_541 = fragment_unnamed_538 + (-0.5f);
precise float fragment_unnamed_542 = fragment_unnamed_539 + 1.5f;
precise float fragment_unnamed_546 = fragment_unnamed_533 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_547 = fragment_unnamed_531 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_548 = fragment_unnamed_535 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_552 = fragment_unnamed_540 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_553 = fragment_unnamed_541 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_554 = fragment_unnamed_542 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_593 = fragment_unnamed_525 * fragment_unnamed_523;
precise float fragment_unnamed_594 = fragment_unnamed_525 * fragment_unnamed_524;
precise float fragment_unnamed_595 = fragment_unnamed_525 * fragment_unnamed_522;
precise float fragment_unnamed_596 = fragment_unnamed_526 * fragment_unnamed_523;
precise float fragment_unnamed_597 = fragment_unnamed_526 * fragment_unnamed_521;
precise float fragment_unnamed_598 = fragment_unnamed_526 * fragment_unnamed_522;
precise float fragment_unnamed_599 = fragment_unnamed_527 * fragment_unnamed_523;
precise float fragment_unnamed_600 = fragment_unnamed_527 * fragment_unnamed_524;
precise float fragment_unnamed_601 = fragment_unnamed_527 * fragment_unnamed_522;
precise float fragment_unnamed_611 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x * fragment_unnamed_594;
float fragment_unnamed_637 = mad(fragment_unnamed_599, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_598, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_597, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_596, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_595, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_593, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x, fragment_unnamed_611))))));
fragment_unnamed_457 = mad(fragment_unnamed_601, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_600, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, fragment_unnamed_637));
}
else
{
float fragment_unnamed_654 = floor(mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_655 = floor(mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_660 = (-0.0f) - fragment_unnamed_654;
precise float fragment_unnamed_661 = (-0.0f) - fragment_unnamed_655;
float fragment_unnamed_662 = mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, fragment_unnamed_660);
float fragment_unnamed_663 = mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, fragment_unnamed_661);
precise float fragment_unnamed_664 = fragment_unnamed_662 + 0.5f;
precise float fragment_unnamed_665 = fragment_unnamed_662 + 1.0f;
precise float fragment_unnamed_666 = fragment_unnamed_663 + 0.5f;
precise float fragment_unnamed_667 = fragment_unnamed_663 + 1.0f;
precise float fragment_unnamed_668 = fragment_unnamed_664 * fragment_unnamed_664;
precise float fragment_unnamed_669 = fragment_unnamed_664 * fragment_unnamed_664;
precise float fragment_unnamed_670 = fragment_unnamed_666 * fragment_unnamed_666;
precise float fragment_unnamed_671 = fragment_unnamed_666 * fragment_unnamed_666;
precise float fragment_unnamed_672 = fragment_unnamed_669 * 0.040816001594066619873046875f;
precise float fragment_unnamed_674 = fragment_unnamed_671 * 0.040816001594066619873046875f;
precise float fragment_unnamed_675 = (-0.0f) - fragment_unnamed_662;
precise float fragment_unnamed_676 = (-0.0f) - fragment_unnamed_663;
precise float fragment_unnamed_679 = (-0.0f) - fragment_unnamed_662;
precise float fragment_unnamed_680 = (-0.0f) - fragment_unnamed_663;
precise float fragment_unnamed_681 = fragment_unnamed_679 + 1.0f;
precise float fragment_unnamed_682 = fragment_unnamed_680 + 1.0f;
float fragment_unnamed_683 = min(fragment_unnamed_662, 0.0f);
float fragment_unnamed_684 = min(fragment_unnamed_663, 0.0f);
precise float fragment_unnamed_685 = (-0.0f) - fragment_unnamed_683;
precise float fragment_unnamed_686 = (-0.0f) - fragment_unnamed_684;
float fragment_unnamed_689 = max(fragment_unnamed_662, 0.0f);
float fragment_unnamed_690 = max(fragment_unnamed_663, 0.0f);
precise float fragment_unnamed_691 = (-0.0f) - fragment_unnamed_689;
precise float fragment_unnamed_692 = (-0.0f) - fragment_unnamed_690;
precise float fragment_unnamed_695 = mad(fragment_unnamed_685, fragment_unnamed_683, fragment_unnamed_681) + 2.0f;
precise float fragment_unnamed_696 = mad(fragment_unnamed_686, fragment_unnamed_684, fragment_unnamed_682) + 2.0f;
precise float fragment_unnamed_697 = mad(fragment_unnamed_691, fragment_unnamed_689, fragment_unnamed_665) + 2.0f;
precise float fragment_unnamed_698 = mad(fragment_unnamed_692, fragment_unnamed_690, fragment_unnamed_667) + 2.0f;
precise float fragment_unnamed_699 = fragment_unnamed_697 * 0.08163200318813323974609375f;
precise float fragment_unnamed_701 = mad(fragment_unnamed_670, 0.5f, fragment_unnamed_676) * 0.08163200318813323974609375f;
precise float fragment_unnamed_702 = mad(fragment_unnamed_668, 0.5f, fragment_unnamed_675) * 0.08163200318813323974609375f;
precise float fragment_unnamed_703 = fragment_unnamed_698 * 0.08163200318813323974609375f;
precise float fragment_unnamed_704 = fragment_unnamed_695 * 0.08163200318813323974609375f;
precise float fragment_unnamed_705 = fragment_unnamed_696 * 0.08163200318813323974609375f;
float fragment_unnamed_710 = mad(fragment_unnamed_662, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_711 = mad(fragment_unnamed_662, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_712 = fragment_unnamed_710 + fragment_unnamed_702;
precise float fragment_unnamed_713 = fragment_unnamed_704 + mad(fragment_unnamed_662, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_714 = fragment_unnamed_711 + fragment_unnamed_699;
precise float fragment_unnamed_715 = fragment_unnamed_672 + mad(fragment_unnamed_662, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_718 = mad(fragment_unnamed_663, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_719 = mad(fragment_unnamed_663, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_720 = fragment_unnamed_718 + fragment_unnamed_701;
precise float fragment_unnamed_721 = fragment_unnamed_705 + mad(fragment_unnamed_663, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_722 = fragment_unnamed_719 + fragment_unnamed_703;
precise float fragment_unnamed_723 = fragment_unnamed_674 + mad(fragment_unnamed_663, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_724 = fragment_unnamed_710 / fragment_unnamed_712;
precise float fragment_unnamed_725 = fragment_unnamed_704 / fragment_unnamed_713;
precise float fragment_unnamed_726 = fragment_unnamed_711 / fragment_unnamed_714;
precise float fragment_unnamed_727 = fragment_unnamed_672 / fragment_unnamed_715;
precise float fragment_unnamed_728 = fragment_unnamed_724 + (-3.5f);
precise float fragment_unnamed_730 = fragment_unnamed_725 + (-1.5f);
precise float fragment_unnamed_732 = fragment_unnamed_726 + 0.5f;
precise float fragment_unnamed_733 = fragment_unnamed_727 + 2.5f;
precise float fragment_unnamed_735 = fragment_unnamed_718 / fragment_unnamed_720;
precise float fragment_unnamed_736 = fragment_unnamed_705 / fragment_unnamed_721;
precise float fragment_unnamed_737 = fragment_unnamed_719 / fragment_unnamed_722;
precise float fragment_unnamed_738 = fragment_unnamed_674 / fragment_unnamed_723;
precise float fragment_unnamed_739 = fragment_unnamed_735 + (-3.5f);
precise float fragment_unnamed_740 = fragment_unnamed_736 + (-1.5f);
precise float fragment_unnamed_741 = fragment_unnamed_737 + 0.5f;
precise float fragment_unnamed_742 = fragment_unnamed_738 + 2.5f;
precise float fragment_unnamed_746 = fragment_unnamed_733 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_747 = fragment_unnamed_728 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_748 = fragment_unnamed_730 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_749 = fragment_unnamed_732 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_753 = fragment_unnamed_739 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_754 = fragment_unnamed_742 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_755 = fragment_unnamed_740 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_756 = fragment_unnamed_741 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_833 = fragment_unnamed_720 * fragment_unnamed_712;
precise float fragment_unnamed_834 = fragment_unnamed_720 * fragment_unnamed_713;
precise float fragment_unnamed_835 = fragment_unnamed_720 * fragment_unnamed_714;
precise float fragment_unnamed_836 = fragment_unnamed_720 * fragment_unnamed_715;
precise float fragment_unnamed_837 = fragment_unnamed_721 * fragment_unnamed_712;
precise float fragment_unnamed_838 = fragment_unnamed_721 * fragment_unnamed_713;
precise float fragment_unnamed_839 = fragment_unnamed_721 * fragment_unnamed_714;
precise float fragment_unnamed_840 = fragment_unnamed_721 * fragment_unnamed_715;
precise float fragment_unnamed_841 = fragment_unnamed_722 * fragment_unnamed_712;
precise float fragment_unnamed_842 = fragment_unnamed_722 * fragment_unnamed_713;
precise float fragment_unnamed_843 = fragment_unnamed_722 * fragment_unnamed_714;
precise float fragment_unnamed_844 = fragment_unnamed_722 * fragment_unnamed_715;
precise float fragment_unnamed_845 = fragment_unnamed_723 * fragment_unnamed_712;
precise float fragment_unnamed_846 = fragment_unnamed_723 * fragment_unnamed_713;
precise float fragment_unnamed_847 = fragment_unnamed_723 * fragment_unnamed_714;
precise float fragment_unnamed_848 = fragment_unnamed_723 * fragment_unnamed_715;
precise float fragment_unnamed_858 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x * fragment_unnamed_834;
float fragment_unnamed_884 = mad(fragment_unnamed_839, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_838, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_837, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_836, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_835, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_833, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, fragment_unnamed_858))))));
float fragment_unnamed_914 = mad(fragment_unnamed_845, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_844, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_843, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_842, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_841, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_840, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, fragment_unnamed_884))))));
fragment_unnamed_457 = mad(fragment_unnamed_848, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_847, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_846, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, fragment_unnamed_914)));
}
fragment_unnamed_421 = fragment_unnamed_457;
}
fragment_unnamed_420 = fragment_unnamed_421;
}
else
{
fragment_unnamed_420 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_unnamed_236).xxxx.x;
}
precise float fragment_unnamed_425 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_426 = fragment_unnamed_425 + 1.0f;
float fragment_unnamed_439 = asfloat(((((fragment_unnamed_236 >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_unnamed_236) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_420, fragment_uniform_buffer_2[27u].x, fragment_unnamed_426)));
precise float fragment_unnamed_449 = mad(fragment_input_3.x, fragment_unnamed_439, fragment_unnamed_339) * fragment_unnamed_352.x;
precise float fragment_unnamed_450 = mad(fragment_input_3.y, fragment_unnamed_439, fragment_unnamed_340) * fragment_unnamed_352.y;
precise float fragment_unnamed_451 = mad(fragment_input_3.z, fragment_unnamed_439, fragment_unnamed_341) * fragment_unnamed_352.z;
fragment_output_0.x = fragment_unnamed_449;
fragment_output_0.y = fragment_unnamed_450;
fragment_output_0.z = fragment_unnamed_451;
fragment_output_0.w = fragment_unnamed_352.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_7 = stage_input.fragment_input_7;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !_LIGHT_COOKIES
#endif // !_MAIN_LIGHT_SHADOWS
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_60 = asfloat(1065353216u);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_142 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_147 = (-0.0f) - fragment_unnamed_142;
float fragment_unnamed_150 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_147);
precise float fragment_unnamed_160 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
precise float fragment_unnamed_161 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
precise float fragment_unnamed_162 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_150, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_60));
float4 fragment_unnamed_173 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_267;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_268;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_214 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_215 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_216 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_217 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_242 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_243 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_244 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_245 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_268 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_214, fragment_unnamed_215), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_216, fragment_unnamed_217), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_242, fragment_unnamed_243), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_244, fragment_unnamed_245), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_310;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_322 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_323 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_332 = (-0.0f) - fragment_unnamed_322;
precise float fragment_unnamed_333 = (-0.0f) - fragment_unnamed_323;
float fragment_unnamed_334 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_332);
float fragment_unnamed_335 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_333);
precise float fragment_unnamed_336 = fragment_unnamed_334 + 0.5f;
precise float fragment_unnamed_337 = fragment_unnamed_334 + 1.0f;
precise float fragment_unnamed_338 = fragment_unnamed_335 + 0.5f;
precise float fragment_unnamed_339 = fragment_unnamed_335 + 1.0f;
precise float fragment_unnamed_340 = fragment_unnamed_336 * fragment_unnamed_336;
precise float fragment_unnamed_341 = fragment_unnamed_336 * fragment_unnamed_336;
precise float fragment_unnamed_342 = fragment_unnamed_338 * fragment_unnamed_338;
precise float fragment_unnamed_343 = fragment_unnamed_338 * fragment_unnamed_338;
precise float fragment_unnamed_344 = fragment_unnamed_341 * 0.07999999821186065673828125f;
precise float fragment_unnamed_346 = fragment_unnamed_343 * 0.07999999821186065673828125f;
precise float fragment_unnamed_347 = (-0.0f) - fragment_unnamed_334;
precise float fragment_unnamed_348 = (-0.0f) - fragment_unnamed_335;
precise float fragment_unnamed_351 = (-0.0f) - fragment_unnamed_334;
precise float fragment_unnamed_352 = (-0.0f) - fragment_unnamed_335;
precise float fragment_unnamed_353 = fragment_unnamed_351 + 1.0f;
precise float fragment_unnamed_354 = fragment_unnamed_352 + 1.0f;
float fragment_unnamed_355 = min(fragment_unnamed_334, 0.0f);
float fragment_unnamed_356 = min(fragment_unnamed_335, 0.0f);
precise float fragment_unnamed_357 = (-0.0f) - fragment_unnamed_355;
precise float fragment_unnamed_358 = (-0.0f) - fragment_unnamed_356;
float fragment_unnamed_361 = max(fragment_unnamed_334, 0.0f);
float fragment_unnamed_362 = max(fragment_unnamed_335, 0.0f);
precise float fragment_unnamed_363 = (-0.0f) - fragment_unnamed_361;
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_362;
precise float fragment_unnamed_367 = mad(fragment_unnamed_357, fragment_unnamed_355, fragment_unnamed_353) + 1.0f;
precise float fragment_unnamed_368 = mad(fragment_unnamed_358, fragment_unnamed_356, fragment_unnamed_354) + 1.0f;
precise float fragment_unnamed_369 = mad(fragment_unnamed_363, fragment_unnamed_361, fragment_unnamed_337) + 1.0f;
precise float fragment_unnamed_370 = mad(fragment_unnamed_364, fragment_unnamed_362, fragment_unnamed_339) + 1.0f;
precise float fragment_unnamed_371 = mad(fragment_unnamed_340, 0.5f, fragment_unnamed_347) * 0.1599999964237213134765625f;
precise float fragment_unnamed_373 = mad(fragment_unnamed_342, 0.5f, fragment_unnamed_348) * 0.1599999964237213134765625f;
precise float fragment_unnamed_374 = fragment_unnamed_353 * 0.1599999964237213134765625f;
precise float fragment_unnamed_375 = fragment_unnamed_354 * 0.1599999964237213134765625f;
precise float fragment_unnamed_376 = fragment_unnamed_367 * 0.1599999964237213134765625f;
precise float fragment_unnamed_377 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_378 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_379 = fragment_unnamed_370 * 0.1599999964237213134765625f;
precise float fragment_unnamed_380 = fragment_unnamed_337 * 0.1599999964237213134765625f;
precise float fragment_unnamed_381 = fragment_unnamed_339 * 0.1599999964237213134765625f;
precise float fragment_unnamed_382 = fragment_unnamed_378 + fragment_unnamed_376;
precise float fragment_unnamed_383 = fragment_unnamed_344 + fragment_unnamed_380;
precise float fragment_unnamed_384 = fragment_unnamed_374 + fragment_unnamed_371;
precise float fragment_unnamed_385 = fragment_unnamed_378 + fragment_unnamed_376;
precise float fragment_unnamed_386 = fragment_unnamed_373 + fragment_unnamed_375;
precise float fragment_unnamed_387 = fragment_unnamed_377 + fragment_unnamed_379;
precise float fragment_unnamed_388 = fragment_unnamed_381 + fragment_unnamed_346;
precise float fragment_unnamed_389 = fragment_unnamed_374 / fragment_unnamed_384;
precise float fragment_unnamed_390 = fragment_unnamed_378 / fragment_unnamed_385;
precise float fragment_unnamed_391 = fragment_unnamed_344 / fragment_unnamed_383;
precise float fragment_unnamed_392 = fragment_unnamed_389 + (-2.5f);
precise float fragment_unnamed_394 = fragment_unnamed_390 + (-0.5f);
precise float fragment_unnamed_396 = fragment_unnamed_391 + 1.5f;
precise float fragment_unnamed_398 = fragment_unnamed_375 / fragment_unnamed_386;
precise float fragment_unnamed_399 = fragment_unnamed_379 / fragment_unnamed_387;
precise float fragment_unnamed_400 = fragment_unnamed_346 / fragment_unnamed_388;
precise float fragment_unnamed_401 = fragment_unnamed_398 + (-2.5f);
precise float fragment_unnamed_402 = fragment_unnamed_399 + (-0.5f);
precise float fragment_unnamed_403 = fragment_unnamed_400 + 1.5f;
precise float fragment_unnamed_407 = fragment_unnamed_394 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_408 = fragment_unnamed_392 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_409 = fragment_unnamed_396 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_413 = fragment_unnamed_401 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_414 = fragment_unnamed_402 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_415 = fragment_unnamed_403 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_454 = fragment_unnamed_386 * fragment_unnamed_384;
precise float fragment_unnamed_455 = fragment_unnamed_386 * fragment_unnamed_385;
precise float fragment_unnamed_456 = fragment_unnamed_386 * fragment_unnamed_383;
precise float fragment_unnamed_457 = fragment_unnamed_387 * fragment_unnamed_384;
precise float fragment_unnamed_458 = fragment_unnamed_387 * fragment_unnamed_382;
precise float fragment_unnamed_459 = fragment_unnamed_387 * fragment_unnamed_383;
precise float fragment_unnamed_460 = fragment_unnamed_388 * fragment_unnamed_384;
precise float fragment_unnamed_461 = fragment_unnamed_388 * fragment_unnamed_385;
precise float fragment_unnamed_462 = fragment_unnamed_388 * fragment_unnamed_383;
precise float fragment_unnamed_476 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x * fragment_unnamed_455;
float fragment_unnamed_512 = mad(fragment_unnamed_460, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_459, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_458, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_457, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_414)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_456, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_454, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_408), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_413)), fragment_input_4.z).xxxx.x, fragment_unnamed_476))))));
fragment_unnamed_310 = mad(fragment_unnamed_462, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_409), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_461, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_322, fragment_uniform_buffer_2[28u].x, fragment_unnamed_407), mad(fragment_unnamed_323, fragment_uniform_buffer_2[28u].y, fragment_unnamed_415)), fragment_input_4.z).xxxx.x, fragment_unnamed_512));
}
else
{
float fragment_unnamed_537 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_538 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_547 = (-0.0f) - fragment_unnamed_537;
precise float fragment_unnamed_548 = (-0.0f) - fragment_unnamed_538;
float fragment_unnamed_549 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_547);
float fragment_unnamed_550 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_548);
precise float fragment_unnamed_551 = fragment_unnamed_549 + 0.5f;
precise float fragment_unnamed_552 = fragment_unnamed_549 + 1.0f;
precise float fragment_unnamed_553 = fragment_unnamed_550 + 0.5f;
precise float fragment_unnamed_554 = fragment_unnamed_550 + 1.0f;
precise float fragment_unnamed_555 = fragment_unnamed_551 * fragment_unnamed_551;
precise float fragment_unnamed_556 = fragment_unnamed_551 * fragment_unnamed_551;
precise float fragment_unnamed_557 = fragment_unnamed_553 * fragment_unnamed_553;
precise float fragment_unnamed_558 = fragment_unnamed_553 * fragment_unnamed_553;
precise float fragment_unnamed_559 = fragment_unnamed_556 * 0.040816001594066619873046875f;
precise float fragment_unnamed_561 = fragment_unnamed_558 * 0.040816001594066619873046875f;
precise float fragment_unnamed_562 = (-0.0f) - fragment_unnamed_549;
precise float fragment_unnamed_563 = (-0.0f) - fragment_unnamed_550;
precise float fragment_unnamed_566 = (-0.0f) - fragment_unnamed_549;
precise float fragment_unnamed_567 = (-0.0f) - fragment_unnamed_550;
precise float fragment_unnamed_568 = fragment_unnamed_566 + 1.0f;
precise float fragment_unnamed_569 = fragment_unnamed_567 + 1.0f;
float fragment_unnamed_570 = min(fragment_unnamed_549, 0.0f);
float fragment_unnamed_571 = min(fragment_unnamed_550, 0.0f);
precise float fragment_unnamed_572 = (-0.0f) - fragment_unnamed_570;
precise float fragment_unnamed_573 = (-0.0f) - fragment_unnamed_571;
float fragment_unnamed_576 = max(fragment_unnamed_549, 0.0f);
float fragment_unnamed_577 = max(fragment_unnamed_550, 0.0f);
precise float fragment_unnamed_578 = (-0.0f) - fragment_unnamed_576;
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_577;
precise float fragment_unnamed_582 = mad(fragment_unnamed_572, fragment_unnamed_570, fragment_unnamed_568) + 2.0f;
precise float fragment_unnamed_583 = mad(fragment_unnamed_573, fragment_unnamed_571, fragment_unnamed_569) + 2.0f;
precise float fragment_unnamed_584 = mad(fragment_unnamed_578, fragment_unnamed_576, fragment_unnamed_552) + 2.0f;
precise float fragment_unnamed_585 = mad(fragment_unnamed_579, fragment_unnamed_577, fragment_unnamed_554) + 2.0f;
precise float fragment_unnamed_586 = fragment_unnamed_584 * 0.08163200318813323974609375f;
precise float fragment_unnamed_588 = mad(fragment_unnamed_557, 0.5f, fragment_unnamed_563) * 0.08163200318813323974609375f;
precise float fragment_unnamed_589 = mad(fragment_unnamed_555, 0.5f, fragment_unnamed_562) * 0.08163200318813323974609375f;
precise float fragment_unnamed_590 = fragment_unnamed_585 * 0.08163200318813323974609375f;
precise float fragment_unnamed_591 = fragment_unnamed_582 * 0.08163200318813323974609375f;
precise float fragment_unnamed_592 = fragment_unnamed_583 * 0.08163200318813323974609375f;
float fragment_unnamed_597 = mad(fragment_unnamed_549, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_598 = mad(fragment_unnamed_549, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_599 = fragment_unnamed_597 + fragment_unnamed_589;
precise float fragment_unnamed_600 = fragment_unnamed_591 + mad(fragment_unnamed_549, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_601 = fragment_unnamed_598 + fragment_unnamed_586;
precise float fragment_unnamed_602 = fragment_unnamed_559 + mad(fragment_unnamed_549, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_605 = mad(fragment_unnamed_550, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_606 = mad(fragment_unnamed_550, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_607 = fragment_unnamed_605 + fragment_unnamed_588;
precise float fragment_unnamed_608 = fragment_unnamed_592 + mad(fragment_unnamed_550, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_609 = fragment_unnamed_606 + fragment_unnamed_590;
precise float fragment_unnamed_610 = fragment_unnamed_561 + mad(fragment_unnamed_550, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_611 = fragment_unnamed_597 / fragment_unnamed_599;
precise float fragment_unnamed_612 = fragment_unnamed_591 / fragment_unnamed_600;
precise float fragment_unnamed_613 = fragment_unnamed_598 / fragment_unnamed_601;
precise float fragment_unnamed_614 = fragment_unnamed_559 / fragment_unnamed_602;
precise float fragment_unnamed_615 = fragment_unnamed_611 + (-3.5f);
precise float fragment_unnamed_617 = fragment_unnamed_612 + (-1.5f);
precise float fragment_unnamed_619 = fragment_unnamed_613 + 0.5f;
precise float fragment_unnamed_620 = fragment_unnamed_614 + 2.5f;
precise float fragment_unnamed_622 = fragment_unnamed_605 / fragment_unnamed_607;
precise float fragment_unnamed_623 = fragment_unnamed_592 / fragment_unnamed_608;
precise float fragment_unnamed_624 = fragment_unnamed_606 / fragment_unnamed_609;
precise float fragment_unnamed_625 = fragment_unnamed_561 / fragment_unnamed_610;
precise float fragment_unnamed_626 = fragment_unnamed_622 + (-3.5f);
precise float fragment_unnamed_627 = fragment_unnamed_623 + (-1.5f);
precise float fragment_unnamed_628 = fragment_unnamed_624 + 0.5f;
precise float fragment_unnamed_629 = fragment_unnamed_625 + 2.5f;
precise float fragment_unnamed_633 = fragment_unnamed_620 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_634 = fragment_unnamed_615 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_635 = fragment_unnamed_617 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_636 = fragment_unnamed_619 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_640 = fragment_unnamed_626 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_641 = fragment_unnamed_629 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_642 = fragment_unnamed_627 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_643 = fragment_unnamed_628 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_720 = fragment_unnamed_607 * fragment_unnamed_599;
precise float fragment_unnamed_721 = fragment_unnamed_607 * fragment_unnamed_600;
precise float fragment_unnamed_722 = fragment_unnamed_607 * fragment_unnamed_601;
precise float fragment_unnamed_723 = fragment_unnamed_607 * fragment_unnamed_602;
precise float fragment_unnamed_724 = fragment_unnamed_608 * fragment_unnamed_599;
precise float fragment_unnamed_725 = fragment_unnamed_608 * fragment_unnamed_600;
precise float fragment_unnamed_726 = fragment_unnamed_608 * fragment_unnamed_601;
precise float fragment_unnamed_727 = fragment_unnamed_608 * fragment_unnamed_602;
precise float fragment_unnamed_728 = fragment_unnamed_609 * fragment_unnamed_599;
precise float fragment_unnamed_729 = fragment_unnamed_609 * fragment_unnamed_600;
precise float fragment_unnamed_730 = fragment_unnamed_609 * fragment_unnamed_601;
precise float fragment_unnamed_731 = fragment_unnamed_609 * fragment_unnamed_602;
precise float fragment_unnamed_732 = fragment_unnamed_610 * fragment_unnamed_599;
precise float fragment_unnamed_733 = fragment_unnamed_610 * fragment_unnamed_600;
precise float fragment_unnamed_734 = fragment_unnamed_610 * fragment_unnamed_601;
precise float fragment_unnamed_735 = fragment_unnamed_610 * fragment_unnamed_602;
precise float fragment_unnamed_749 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x * fragment_unnamed_721;
float fragment_unnamed_785 = mad(fragment_unnamed_726, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_725, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_724, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_723, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_722, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_720, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_640)), fragment_input_4.z).xxxx.x, fragment_unnamed_749))))));
float fragment_unnamed_827 = mad(fragment_unnamed_732, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_731, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_730, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_729, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_728, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_634), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_727, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_642)), fragment_input_4.z).xxxx.x, fragment_unnamed_785))))));
fragment_unnamed_310 = mad(fragment_unnamed_735, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_633), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_734, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_733, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_537, fragment_uniform_buffer_2[28u].x, fragment_unnamed_635), mad(fragment_unnamed_538, fragment_uniform_buffer_2[28u].y, fragment_unnamed_641)), fragment_input_4.z).xxxx.x, fragment_unnamed_827)));
}
fragment_unnamed_268 = fragment_unnamed_310;
}
fragment_unnamed_267 = fragment_unnamed_268;
}
else
{
fragment_unnamed_267 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_272 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_273 = fragment_unnamed_272 + 1.0f;
float fragment_unnamed_291 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_267, fragment_uniform_buffer_2[27u].x, fragment_unnamed_273)));
precise float fragment_unnamed_301 = mad(fragment_input_3.x, fragment_unnamed_291, fragment_unnamed_160) * fragment_unnamed_173.x;
precise float fragment_unnamed_302 = mad(fragment_input_3.y, fragment_unnamed_291, fragment_unnamed_161) * fragment_unnamed_173.y;
precise float fragment_unnamed_303 = mad(fragment_input_3.z, fragment_unnamed_291, fragment_unnamed_162) * fragment_unnamed_173.z;
fragment_output_0.x = fragment_unnamed_301;
fragment_output_0.y = fragment_unnamed_302;
fragment_output_0.z = fragment_unnamed_303;
fragment_output_0.w = fragment_unnamed_173.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float4 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float4 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float4 fragment_unnamed_176 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_270;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_271;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_217 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_218 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_219 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_220 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_245 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_246 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_247 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_248 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_271 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_217, fragment_unnamed_218), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_219, fragment_unnamed_220), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_245, fragment_unnamed_246), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_247, fragment_unnamed_248), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_313;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_325 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_326 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_335 = (-0.0f) - fragment_unnamed_325;
precise float fragment_unnamed_336 = (-0.0f) - fragment_unnamed_326;
float fragment_unnamed_337 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_335);
float fragment_unnamed_338 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_336);
precise float fragment_unnamed_339 = fragment_unnamed_337 + 0.5f;
precise float fragment_unnamed_340 = fragment_unnamed_337 + 1.0f;
precise float fragment_unnamed_341 = fragment_unnamed_338 + 0.5f;
precise float fragment_unnamed_342 = fragment_unnamed_338 + 1.0f;
precise float fragment_unnamed_343 = fragment_unnamed_339 * fragment_unnamed_339;
precise float fragment_unnamed_344 = fragment_unnamed_339 * fragment_unnamed_339;
precise float fragment_unnamed_345 = fragment_unnamed_341 * fragment_unnamed_341;
precise float fragment_unnamed_346 = fragment_unnamed_341 * fragment_unnamed_341;
precise float fragment_unnamed_347 = fragment_unnamed_344 * 0.07999999821186065673828125f;
precise float fragment_unnamed_349 = fragment_unnamed_346 * 0.07999999821186065673828125f;
precise float fragment_unnamed_350 = (-0.0f) - fragment_unnamed_337;
precise float fragment_unnamed_351 = (-0.0f) - fragment_unnamed_338;
precise float fragment_unnamed_354 = (-0.0f) - fragment_unnamed_337;
precise float fragment_unnamed_355 = (-0.0f) - fragment_unnamed_338;
precise float fragment_unnamed_356 = fragment_unnamed_354 + 1.0f;
precise float fragment_unnamed_357 = fragment_unnamed_355 + 1.0f;
float fragment_unnamed_358 = min(fragment_unnamed_337, 0.0f);
float fragment_unnamed_359 = min(fragment_unnamed_338, 0.0f);
precise float fragment_unnamed_360 = (-0.0f) - fragment_unnamed_358;
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_359;
float fragment_unnamed_364 = max(fragment_unnamed_337, 0.0f);
float fragment_unnamed_365 = max(fragment_unnamed_338, 0.0f);
precise float fragment_unnamed_366 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_367 = (-0.0f) - fragment_unnamed_365;
precise float fragment_unnamed_370 = mad(fragment_unnamed_360, fragment_unnamed_358, fragment_unnamed_356) + 1.0f;
precise float fragment_unnamed_371 = mad(fragment_unnamed_361, fragment_unnamed_359, fragment_unnamed_357) + 1.0f;
precise float fragment_unnamed_372 = mad(fragment_unnamed_366, fragment_unnamed_364, fragment_unnamed_340) + 1.0f;
precise float fragment_unnamed_373 = mad(fragment_unnamed_367, fragment_unnamed_365, fragment_unnamed_342) + 1.0f;
precise float fragment_unnamed_374 = mad(fragment_unnamed_343, 0.5f, fragment_unnamed_350) * 0.1599999964237213134765625f;
precise float fragment_unnamed_376 = mad(fragment_unnamed_345, 0.5f, fragment_unnamed_351) * 0.1599999964237213134765625f;
precise float fragment_unnamed_377 = fragment_unnamed_356 * 0.1599999964237213134765625f;
precise float fragment_unnamed_378 = fragment_unnamed_357 * 0.1599999964237213134765625f;
precise float fragment_unnamed_379 = fragment_unnamed_370 * 0.1599999964237213134765625f;
precise float fragment_unnamed_380 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_381 = fragment_unnamed_372 * 0.1599999964237213134765625f;
precise float fragment_unnamed_382 = fragment_unnamed_373 * 0.1599999964237213134765625f;
precise float fragment_unnamed_383 = fragment_unnamed_340 * 0.1599999964237213134765625f;
precise float fragment_unnamed_384 = fragment_unnamed_342 * 0.1599999964237213134765625f;
precise float fragment_unnamed_385 = fragment_unnamed_381 + fragment_unnamed_379;
precise float fragment_unnamed_386 = fragment_unnamed_347 + fragment_unnamed_383;
precise float fragment_unnamed_387 = fragment_unnamed_377 + fragment_unnamed_374;
precise float fragment_unnamed_388 = fragment_unnamed_381 + fragment_unnamed_379;
precise float fragment_unnamed_389 = fragment_unnamed_376 + fragment_unnamed_378;
precise float fragment_unnamed_390 = fragment_unnamed_380 + fragment_unnamed_382;
precise float fragment_unnamed_391 = fragment_unnamed_384 + fragment_unnamed_349;
precise float fragment_unnamed_392 = fragment_unnamed_377 / fragment_unnamed_387;
precise float fragment_unnamed_393 = fragment_unnamed_381 / fragment_unnamed_388;
precise float fragment_unnamed_394 = fragment_unnamed_347 / fragment_unnamed_386;
precise float fragment_unnamed_395 = fragment_unnamed_392 + (-2.5f);
precise float fragment_unnamed_397 = fragment_unnamed_393 + (-0.5f);
precise float fragment_unnamed_399 = fragment_unnamed_394 + 1.5f;
precise float fragment_unnamed_401 = fragment_unnamed_378 / fragment_unnamed_389;
precise float fragment_unnamed_402 = fragment_unnamed_382 / fragment_unnamed_390;
precise float fragment_unnamed_403 = fragment_unnamed_349 / fragment_unnamed_391;
precise float fragment_unnamed_404 = fragment_unnamed_401 + (-2.5f);
precise float fragment_unnamed_405 = fragment_unnamed_402 + (-0.5f);
precise float fragment_unnamed_406 = fragment_unnamed_403 + 1.5f;
precise float fragment_unnamed_410 = fragment_unnamed_397 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_411 = fragment_unnamed_395 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_412 = fragment_unnamed_399 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_416 = fragment_unnamed_404 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_417 = fragment_unnamed_405 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_418 = fragment_unnamed_406 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_457 = fragment_unnamed_389 * fragment_unnamed_387;
precise float fragment_unnamed_458 = fragment_unnamed_389 * fragment_unnamed_388;
precise float fragment_unnamed_459 = fragment_unnamed_389 * fragment_unnamed_386;
precise float fragment_unnamed_460 = fragment_unnamed_390 * fragment_unnamed_387;
precise float fragment_unnamed_461 = fragment_unnamed_390 * fragment_unnamed_385;
precise float fragment_unnamed_462 = fragment_unnamed_390 * fragment_unnamed_386;
precise float fragment_unnamed_463 = fragment_unnamed_391 * fragment_unnamed_387;
precise float fragment_unnamed_464 = fragment_unnamed_391 * fragment_unnamed_388;
precise float fragment_unnamed_465 = fragment_unnamed_391 * fragment_unnamed_386;
precise float fragment_unnamed_479 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x * fragment_unnamed_458;
float fragment_unnamed_515 = mad(fragment_unnamed_463, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_462, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_461, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_460, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_417)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_459, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_457, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_411), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_416)), fragment_input_4.z).xxxx.x, fragment_unnamed_479))))));
fragment_unnamed_313 = mad(fragment_unnamed_465, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_412), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_464, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_325, fragment_uniform_buffer_2[28u].x, fragment_unnamed_410), mad(fragment_unnamed_326, fragment_uniform_buffer_2[28u].y, fragment_unnamed_418)), fragment_input_4.z).xxxx.x, fragment_unnamed_515));
}
else
{
float fragment_unnamed_540 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_541 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_550 = (-0.0f) - fragment_unnamed_540;
precise float fragment_unnamed_551 = (-0.0f) - fragment_unnamed_541;
float fragment_unnamed_552 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_550);
float fragment_unnamed_553 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_551);
precise float fragment_unnamed_554 = fragment_unnamed_552 + 0.5f;
precise float fragment_unnamed_555 = fragment_unnamed_552 + 1.0f;
precise float fragment_unnamed_556 = fragment_unnamed_553 + 0.5f;
precise float fragment_unnamed_557 = fragment_unnamed_553 + 1.0f;
precise float fragment_unnamed_558 = fragment_unnamed_554 * fragment_unnamed_554;
precise float fragment_unnamed_559 = fragment_unnamed_554 * fragment_unnamed_554;
precise float fragment_unnamed_560 = fragment_unnamed_556 * fragment_unnamed_556;
precise float fragment_unnamed_561 = fragment_unnamed_556 * fragment_unnamed_556;
precise float fragment_unnamed_562 = fragment_unnamed_559 * 0.040816001594066619873046875f;
precise float fragment_unnamed_564 = fragment_unnamed_561 * 0.040816001594066619873046875f;
precise float fragment_unnamed_565 = (-0.0f) - fragment_unnamed_552;
precise float fragment_unnamed_566 = (-0.0f) - fragment_unnamed_553;
precise float fragment_unnamed_569 = (-0.0f) - fragment_unnamed_552;
precise float fragment_unnamed_570 = (-0.0f) - fragment_unnamed_553;
precise float fragment_unnamed_571 = fragment_unnamed_569 + 1.0f;
precise float fragment_unnamed_572 = fragment_unnamed_570 + 1.0f;
float fragment_unnamed_573 = min(fragment_unnamed_552, 0.0f);
float fragment_unnamed_574 = min(fragment_unnamed_553, 0.0f);
precise float fragment_unnamed_575 = (-0.0f) - fragment_unnamed_573;
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_574;
float fragment_unnamed_579 = max(fragment_unnamed_552, 0.0f);
float fragment_unnamed_580 = max(fragment_unnamed_553, 0.0f);
precise float fragment_unnamed_581 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_582 = (-0.0f) - fragment_unnamed_580;
precise float fragment_unnamed_585 = mad(fragment_unnamed_575, fragment_unnamed_573, fragment_unnamed_571) + 2.0f;
precise float fragment_unnamed_586 = mad(fragment_unnamed_576, fragment_unnamed_574, fragment_unnamed_572) + 2.0f;
precise float fragment_unnamed_587 = mad(fragment_unnamed_581, fragment_unnamed_579, fragment_unnamed_555) + 2.0f;
precise float fragment_unnamed_588 = mad(fragment_unnamed_582, fragment_unnamed_580, fragment_unnamed_557) + 2.0f;
precise float fragment_unnamed_589 = fragment_unnamed_587 * 0.08163200318813323974609375f;
precise float fragment_unnamed_591 = mad(fragment_unnamed_560, 0.5f, fragment_unnamed_566) * 0.08163200318813323974609375f;
precise float fragment_unnamed_592 = mad(fragment_unnamed_558, 0.5f, fragment_unnamed_565) * 0.08163200318813323974609375f;
precise float fragment_unnamed_593 = fragment_unnamed_588 * 0.08163200318813323974609375f;
precise float fragment_unnamed_594 = fragment_unnamed_585 * 0.08163200318813323974609375f;
precise float fragment_unnamed_595 = fragment_unnamed_586 * 0.08163200318813323974609375f;
float fragment_unnamed_600 = mad(fragment_unnamed_552, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_601 = mad(fragment_unnamed_552, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_602 = fragment_unnamed_600 + fragment_unnamed_592;
precise float fragment_unnamed_603 = fragment_unnamed_594 + mad(fragment_unnamed_552, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_604 = fragment_unnamed_601 + fragment_unnamed_589;
precise float fragment_unnamed_605 = fragment_unnamed_562 + mad(fragment_unnamed_552, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_608 = mad(fragment_unnamed_553, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_609 = mad(fragment_unnamed_553, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_610 = fragment_unnamed_608 + fragment_unnamed_591;
precise float fragment_unnamed_611 = fragment_unnamed_595 + mad(fragment_unnamed_553, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_612 = fragment_unnamed_609 + fragment_unnamed_593;
precise float fragment_unnamed_613 = fragment_unnamed_564 + mad(fragment_unnamed_553, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_614 = fragment_unnamed_600 / fragment_unnamed_602;
precise float fragment_unnamed_615 = fragment_unnamed_594 / fragment_unnamed_603;
precise float fragment_unnamed_616 = fragment_unnamed_601 / fragment_unnamed_604;
precise float fragment_unnamed_617 = fragment_unnamed_562 / fragment_unnamed_605;
precise float fragment_unnamed_618 = fragment_unnamed_614 + (-3.5f);
precise float fragment_unnamed_620 = fragment_unnamed_615 + (-1.5f);
precise float fragment_unnamed_622 = fragment_unnamed_616 + 0.5f;
precise float fragment_unnamed_623 = fragment_unnamed_617 + 2.5f;
precise float fragment_unnamed_625 = fragment_unnamed_608 / fragment_unnamed_610;
precise float fragment_unnamed_626 = fragment_unnamed_595 / fragment_unnamed_611;
precise float fragment_unnamed_627 = fragment_unnamed_609 / fragment_unnamed_612;
precise float fragment_unnamed_628 = fragment_unnamed_564 / fragment_unnamed_613;
precise float fragment_unnamed_629 = fragment_unnamed_625 + (-3.5f);
precise float fragment_unnamed_630 = fragment_unnamed_626 + (-1.5f);
precise float fragment_unnamed_631 = fragment_unnamed_627 + 0.5f;
precise float fragment_unnamed_632 = fragment_unnamed_628 + 2.5f;
precise float fragment_unnamed_636 = fragment_unnamed_623 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_637 = fragment_unnamed_618 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_638 = fragment_unnamed_620 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_639 = fragment_unnamed_622 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_643 = fragment_unnamed_629 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_644 = fragment_unnamed_632 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_645 = fragment_unnamed_630 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_646 = fragment_unnamed_631 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_723 = fragment_unnamed_610 * fragment_unnamed_602;
precise float fragment_unnamed_724 = fragment_unnamed_610 * fragment_unnamed_603;
precise float fragment_unnamed_725 = fragment_unnamed_610 * fragment_unnamed_604;
precise float fragment_unnamed_726 = fragment_unnamed_610 * fragment_unnamed_605;
precise float fragment_unnamed_727 = fragment_unnamed_611 * fragment_unnamed_602;
precise float fragment_unnamed_728 = fragment_unnamed_611 * fragment_unnamed_603;
precise float fragment_unnamed_729 = fragment_unnamed_611 * fragment_unnamed_604;
precise float fragment_unnamed_730 = fragment_unnamed_611 * fragment_unnamed_605;
precise float fragment_unnamed_731 = fragment_unnamed_612 * fragment_unnamed_602;
precise float fragment_unnamed_732 = fragment_unnamed_612 * fragment_unnamed_603;
precise float fragment_unnamed_733 = fragment_unnamed_612 * fragment_unnamed_604;
precise float fragment_unnamed_734 = fragment_unnamed_612 * fragment_unnamed_605;
precise float fragment_unnamed_735 = fragment_unnamed_613 * fragment_unnamed_602;
precise float fragment_unnamed_736 = fragment_unnamed_613 * fragment_unnamed_603;
precise float fragment_unnamed_737 = fragment_unnamed_613 * fragment_unnamed_604;
precise float fragment_unnamed_738 = fragment_unnamed_613 * fragment_unnamed_605;
precise float fragment_unnamed_752 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x * fragment_unnamed_724;
float fragment_unnamed_788 = mad(fragment_unnamed_729, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_728, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_727, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_726, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_725, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_723, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_643)), fragment_input_4.z).xxxx.x, fragment_unnamed_752))))));
float fragment_unnamed_830 = mad(fragment_unnamed_735, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_734, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_733, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_732, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_731, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_637), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_646)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_730, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_645)), fragment_input_4.z).xxxx.x, fragment_unnamed_788))))));
fragment_unnamed_313 = mad(fragment_unnamed_738, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_636), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_737, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_639), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_736, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_540, fragment_uniform_buffer_2[28u].x, fragment_unnamed_638), mad(fragment_unnamed_541, fragment_uniform_buffer_2[28u].y, fragment_unnamed_644)), fragment_input_4.z).xxxx.x, fragment_unnamed_830)));
}
fragment_unnamed_271 = fragment_unnamed_313;
}
fragment_unnamed_270 = fragment_unnamed_271;
}
else
{
fragment_unnamed_270 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_275 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_276 = fragment_unnamed_275 + 1.0f;
float fragment_unnamed_294 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_270, fragment_uniform_buffer_2[27u].x, fragment_unnamed_276)));
precise float fragment_unnamed_304 = mad(fragment_input_3.x, fragment_unnamed_294, fragment_unnamed_163) * fragment_unnamed_176.x;
precise float fragment_unnamed_305 = mad(fragment_input_3.y, fragment_unnamed_294, fragment_unnamed_164) * fragment_unnamed_176.y;
precise float fragment_unnamed_306 = mad(fragment_input_3.z, fragment_unnamed_294, fragment_unnamed_165) * fragment_unnamed_176.z;
fragment_output_0.x = fragment_unnamed_304;
fragment_output_0.y = fragment_unnamed_305;
fragment_output_0.z = fragment_unnamed_306;
fragment_output_0.w = fragment_unnamed_176.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_64 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_69 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_70 = fragment_input_5.x + fragment_unnamed_64;
precise float fragment_unnamed_71 = fragment_input_5.y + fragment_unnamed_67;
precise float fragment_unnamed_72 = fragment_input_5.z + fragment_unnamed_69;
precise float fragment_unnamed_83 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_85 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_87 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_88 = fragment_input_5.x + fragment_unnamed_83;
precise float fragment_unnamed_89 = fragment_input_5.y + fragment_unnamed_85;
precise float fragment_unnamed_90 = fragment_input_5.z + fragment_unnamed_87;
precise float fragment_unnamed_101 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_103 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_105 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_106 = fragment_input_5.x + fragment_unnamed_101;
precise float fragment_unnamed_107 = fragment_input_5.y + fragment_unnamed_103;
precise float fragment_unnamed_108 = fragment_input_5.z + fragment_unnamed_105;
precise float fragment_unnamed_119 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_121 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_123 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_124 = fragment_input_5.x + fragment_unnamed_119;
precise float fragment_unnamed_125 = fragment_input_5.y + fragment_unnamed_121;
precise float fragment_unnamed_126 = fragment_input_5.z + fragment_unnamed_123;
bool fragment_unnamed_147 = dot(float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72), float3(fragment_unnamed_70, fragment_unnamed_71, fragment_unnamed_72)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_148 = dot(float3(fragment_unnamed_88, fragment_unnamed_89, fragment_unnamed_90), float3(fragment_unnamed_88, fragment_unnamed_89, fragment_unnamed_90)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_149 = dot(float3(fragment_unnamed_106, fragment_unnamed_107, fragment_unnamed_108), float3(fragment_unnamed_106, fragment_unnamed_107, fragment_unnamed_108)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_173 = asfloat(fragment_unnamed_147 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_148 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_174 = asfloat(fragment_unnamed_148 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_149 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_175 = asfloat(fragment_unnamed_149 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_124, fragment_unnamed_125, fragment_unnamed_126), float3(fragment_unnamed_124, fragment_unnamed_125, fragment_unnamed_126)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_188 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_147 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_173, 0.0f), max(fragment_unnamed_174, 0.0f), max(fragment_unnamed_175, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_189 = fragment_unnamed_188 + 4.0f;
uint fragment_unnamed_191 = uint(fragment_unnamed_189) << 2u;
uint fragment_unnamed_194 = fragment_unnamed_191 + 1u;
precise float fragment_unnamed_200 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].x;
precise float fragment_unnamed_201 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].y;
precise float fragment_unnamed_202 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_194].z;
uint fragment_unnamed_213 = fragment_unnamed_191 + 2u;
uint fragment_unnamed_224 = fragment_unnamed_191 + 3u;
precise float fragment_unnamed_231 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].x, fragment_input_5.x, fragment_unnamed_200)) + fragment_uniform_buffer_2[fragment_unnamed_224].x;
precise float fragment_unnamed_232 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].y, fragment_input_5.x, fragment_unnamed_201)) + fragment_uniform_buffer_2[fragment_unnamed_224].y;
precise float fragment_unnamed_233 = mad(fragment_uniform_buffer_2[fragment_unnamed_213].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_191].z, fragment_input_5.x, fragment_unnamed_202)) + fragment_uniform_buffer_2[fragment_unnamed_224].z;
float fragment_unnamed_240 = asfloat(1065353216u);
precise float fragment_unnamed_282 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_283 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_284 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_285 = fragment_input_4.x * fragment_input_4.z;
precise float fragment_unnamed_320 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_325 = (-0.0f) - fragment_unnamed_320;
float fragment_unnamed_326 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_325);
precise float fragment_unnamed_336 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
precise float fragment_unnamed_337 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
precise float fragment_unnamed_338 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_326, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_282, fragment_unnamed_283, fragment_unnamed_284, fragment_unnamed_285))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_240));
float4 fragment_unnamed_349 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_417;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_418;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_377 = fragment_unnamed_231 + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_378 = fragment_unnamed_232 + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_379 = fragment_unnamed_231 + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_380 = fragment_unnamed_232 + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_397 = fragment_unnamed_231 + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_398 = fragment_unnamed_232 + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_399 = fragment_unnamed_231 + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_400 = fragment_unnamed_232 + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_418 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_377, fragment_unnamed_378), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_379, fragment_unnamed_380), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_397, fragment_unnamed_398), fragment_unnamed_233).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_399, fragment_unnamed_400), fragment_unnamed_233).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_454;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_462 = floor(mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_463 = floor(mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_468 = (-0.0f) - fragment_unnamed_462;
precise float fragment_unnamed_469 = (-0.0f) - fragment_unnamed_463;
float fragment_unnamed_470 = mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, fragment_unnamed_468);
float fragment_unnamed_471 = mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, fragment_unnamed_469);
precise float fragment_unnamed_472 = fragment_unnamed_470 + 0.5f;
precise float fragment_unnamed_473 = fragment_unnamed_470 + 1.0f;
precise float fragment_unnamed_474 = fragment_unnamed_471 + 0.5f;
precise float fragment_unnamed_475 = fragment_unnamed_471 + 1.0f;
precise float fragment_unnamed_476 = fragment_unnamed_472 * fragment_unnamed_472;
precise float fragment_unnamed_477 = fragment_unnamed_472 * fragment_unnamed_472;
precise float fragment_unnamed_478 = fragment_unnamed_474 * fragment_unnamed_474;
precise float fragment_unnamed_479 = fragment_unnamed_474 * fragment_unnamed_474;
precise float fragment_unnamed_480 = fragment_unnamed_477 * 0.07999999821186065673828125f;
precise float fragment_unnamed_482 = fragment_unnamed_479 * 0.07999999821186065673828125f;
precise float fragment_unnamed_483 = (-0.0f) - fragment_unnamed_470;
precise float fragment_unnamed_484 = (-0.0f) - fragment_unnamed_471;
precise float fragment_unnamed_487 = (-0.0f) - fragment_unnamed_470;
precise float fragment_unnamed_488 = (-0.0f) - fragment_unnamed_471;
precise float fragment_unnamed_489 = fragment_unnamed_487 + 1.0f;
precise float fragment_unnamed_490 = fragment_unnamed_488 + 1.0f;
float fragment_unnamed_491 = min(fragment_unnamed_470, 0.0f);
float fragment_unnamed_492 = min(fragment_unnamed_471, 0.0f);
precise float fragment_unnamed_493 = (-0.0f) - fragment_unnamed_491;
precise float fragment_unnamed_494 = (-0.0f) - fragment_unnamed_492;
float fragment_unnamed_497 = max(fragment_unnamed_470, 0.0f);
float fragment_unnamed_498 = max(fragment_unnamed_471, 0.0f);
precise float fragment_unnamed_499 = (-0.0f) - fragment_unnamed_497;
precise float fragment_unnamed_500 = (-0.0f) - fragment_unnamed_498;
precise float fragment_unnamed_503 = mad(fragment_unnamed_493, fragment_unnamed_491, fragment_unnamed_489) + 1.0f;
precise float fragment_unnamed_504 = mad(fragment_unnamed_494, fragment_unnamed_492, fragment_unnamed_490) + 1.0f;
precise float fragment_unnamed_505 = mad(fragment_unnamed_499, fragment_unnamed_497, fragment_unnamed_473) + 1.0f;
precise float fragment_unnamed_506 = mad(fragment_unnamed_500, fragment_unnamed_498, fragment_unnamed_475) + 1.0f;
precise float fragment_unnamed_507 = mad(fragment_unnamed_476, 0.5f, fragment_unnamed_483) * 0.1599999964237213134765625f;
precise float fragment_unnamed_509 = mad(fragment_unnamed_478, 0.5f, fragment_unnamed_484) * 0.1599999964237213134765625f;
precise float fragment_unnamed_510 = fragment_unnamed_489 * 0.1599999964237213134765625f;
precise float fragment_unnamed_511 = fragment_unnamed_490 * 0.1599999964237213134765625f;
precise float fragment_unnamed_512 = fragment_unnamed_503 * 0.1599999964237213134765625f;
precise float fragment_unnamed_513 = fragment_unnamed_504 * 0.1599999964237213134765625f;
precise float fragment_unnamed_514 = fragment_unnamed_505 * 0.1599999964237213134765625f;
precise float fragment_unnamed_515 = fragment_unnamed_506 * 0.1599999964237213134765625f;
precise float fragment_unnamed_516 = fragment_unnamed_473 * 0.1599999964237213134765625f;
precise float fragment_unnamed_517 = fragment_unnamed_475 * 0.1599999964237213134765625f;
precise float fragment_unnamed_518 = fragment_unnamed_514 + fragment_unnamed_512;
precise float fragment_unnamed_519 = fragment_unnamed_480 + fragment_unnamed_516;
precise float fragment_unnamed_520 = fragment_unnamed_510 + fragment_unnamed_507;
precise float fragment_unnamed_521 = fragment_unnamed_514 + fragment_unnamed_512;
precise float fragment_unnamed_522 = fragment_unnamed_509 + fragment_unnamed_511;
precise float fragment_unnamed_523 = fragment_unnamed_513 + fragment_unnamed_515;
precise float fragment_unnamed_524 = fragment_unnamed_517 + fragment_unnamed_482;
precise float fragment_unnamed_525 = fragment_unnamed_510 / fragment_unnamed_520;
precise float fragment_unnamed_526 = fragment_unnamed_514 / fragment_unnamed_521;
precise float fragment_unnamed_527 = fragment_unnamed_480 / fragment_unnamed_519;
precise float fragment_unnamed_528 = fragment_unnamed_525 + (-2.5f);
precise float fragment_unnamed_530 = fragment_unnamed_526 + (-0.5f);
precise float fragment_unnamed_532 = fragment_unnamed_527 + 1.5f;
precise float fragment_unnamed_534 = fragment_unnamed_511 / fragment_unnamed_522;
precise float fragment_unnamed_535 = fragment_unnamed_515 / fragment_unnamed_523;
precise float fragment_unnamed_536 = fragment_unnamed_482 / fragment_unnamed_524;
precise float fragment_unnamed_537 = fragment_unnamed_534 + (-2.5f);
precise float fragment_unnamed_538 = fragment_unnamed_535 + (-0.5f);
precise float fragment_unnamed_539 = fragment_unnamed_536 + 1.5f;
precise float fragment_unnamed_543 = fragment_unnamed_530 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_544 = fragment_unnamed_528 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_545 = fragment_unnamed_532 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_549 = fragment_unnamed_537 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_550 = fragment_unnamed_538 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_551 = fragment_unnamed_539 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_590 = fragment_unnamed_522 * fragment_unnamed_520;
precise float fragment_unnamed_591 = fragment_unnamed_522 * fragment_unnamed_521;
precise float fragment_unnamed_592 = fragment_unnamed_522 * fragment_unnamed_519;
precise float fragment_unnamed_593 = fragment_unnamed_523 * fragment_unnamed_520;
precise float fragment_unnamed_594 = fragment_unnamed_523 * fragment_unnamed_518;
precise float fragment_unnamed_595 = fragment_unnamed_523 * fragment_unnamed_519;
precise float fragment_unnamed_596 = fragment_unnamed_524 * fragment_unnamed_520;
precise float fragment_unnamed_597 = fragment_unnamed_524 * fragment_unnamed_521;
precise float fragment_unnamed_598 = fragment_unnamed_524 * fragment_unnamed_519;
precise float fragment_unnamed_608 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x * fragment_unnamed_591;
float fragment_unnamed_634 = mad(fragment_unnamed_596, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_595, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_594, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_593, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_550)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_592, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_590, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_544), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_549)), fragment_unnamed_233).xxxx.x, fragment_unnamed_608))))));
fragment_unnamed_454 = mad(fragment_unnamed_598, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_545), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_597, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_462, fragment_uniform_buffer_2[28u].x, fragment_unnamed_543), mad(fragment_unnamed_463, fragment_uniform_buffer_2[28u].y, fragment_unnamed_551)), fragment_unnamed_233).xxxx.x, fragment_unnamed_634));
}
else
{
float fragment_unnamed_651 = floor(mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_652 = floor(mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_657 = (-0.0f) - fragment_unnamed_651;
precise float fragment_unnamed_658 = (-0.0f) - fragment_unnamed_652;
float fragment_unnamed_659 = mad(fragment_unnamed_231, fragment_uniform_buffer_2[28u].z, fragment_unnamed_657);
float fragment_unnamed_660 = mad(fragment_unnamed_232, fragment_uniform_buffer_2[28u].w, fragment_unnamed_658);
precise float fragment_unnamed_661 = fragment_unnamed_659 + 0.5f;
precise float fragment_unnamed_662 = fragment_unnamed_659 + 1.0f;
precise float fragment_unnamed_663 = fragment_unnamed_660 + 0.5f;
precise float fragment_unnamed_664 = fragment_unnamed_660 + 1.0f;
precise float fragment_unnamed_665 = fragment_unnamed_661 * fragment_unnamed_661;
precise float fragment_unnamed_666 = fragment_unnamed_661 * fragment_unnamed_661;
precise float fragment_unnamed_667 = fragment_unnamed_663 * fragment_unnamed_663;
precise float fragment_unnamed_668 = fragment_unnamed_663 * fragment_unnamed_663;
precise float fragment_unnamed_669 = fragment_unnamed_666 * 0.040816001594066619873046875f;
precise float fragment_unnamed_671 = fragment_unnamed_668 * 0.040816001594066619873046875f;
precise float fragment_unnamed_672 = (-0.0f) - fragment_unnamed_659;
precise float fragment_unnamed_673 = (-0.0f) - fragment_unnamed_660;
precise float fragment_unnamed_676 = (-0.0f) - fragment_unnamed_659;
precise float fragment_unnamed_677 = (-0.0f) - fragment_unnamed_660;
precise float fragment_unnamed_678 = fragment_unnamed_676 + 1.0f;
precise float fragment_unnamed_679 = fragment_unnamed_677 + 1.0f;
float fragment_unnamed_680 = min(fragment_unnamed_659, 0.0f);
float fragment_unnamed_681 = min(fragment_unnamed_660, 0.0f);
precise float fragment_unnamed_682 = (-0.0f) - fragment_unnamed_680;
precise float fragment_unnamed_683 = (-0.0f) - fragment_unnamed_681;
float fragment_unnamed_686 = max(fragment_unnamed_659, 0.0f);
float fragment_unnamed_687 = max(fragment_unnamed_660, 0.0f);
precise float fragment_unnamed_688 = (-0.0f) - fragment_unnamed_686;
precise float fragment_unnamed_689 = (-0.0f) - fragment_unnamed_687;
precise float fragment_unnamed_692 = mad(fragment_unnamed_682, fragment_unnamed_680, fragment_unnamed_678) + 2.0f;
precise float fragment_unnamed_693 = mad(fragment_unnamed_683, fragment_unnamed_681, fragment_unnamed_679) + 2.0f;
precise float fragment_unnamed_694 = mad(fragment_unnamed_688, fragment_unnamed_686, fragment_unnamed_662) + 2.0f;
precise float fragment_unnamed_695 = mad(fragment_unnamed_689, fragment_unnamed_687, fragment_unnamed_664) + 2.0f;
precise float fragment_unnamed_696 = fragment_unnamed_694 * 0.08163200318813323974609375f;
precise float fragment_unnamed_698 = mad(fragment_unnamed_667, 0.5f, fragment_unnamed_673) * 0.08163200318813323974609375f;
precise float fragment_unnamed_699 = mad(fragment_unnamed_665, 0.5f, fragment_unnamed_672) * 0.08163200318813323974609375f;
precise float fragment_unnamed_700 = fragment_unnamed_695 * 0.08163200318813323974609375f;
precise float fragment_unnamed_701 = fragment_unnamed_692 * 0.08163200318813323974609375f;
precise float fragment_unnamed_702 = fragment_unnamed_693 * 0.08163200318813323974609375f;
float fragment_unnamed_707 = mad(fragment_unnamed_659, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_708 = mad(fragment_unnamed_659, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_709 = fragment_unnamed_707 + fragment_unnamed_699;
precise float fragment_unnamed_710 = fragment_unnamed_701 + mad(fragment_unnamed_659, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_711 = fragment_unnamed_708 + fragment_unnamed_696;
precise float fragment_unnamed_712 = fragment_unnamed_669 + mad(fragment_unnamed_659, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_715 = mad(fragment_unnamed_660, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_716 = mad(fragment_unnamed_660, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_717 = fragment_unnamed_715 + fragment_unnamed_698;
precise float fragment_unnamed_718 = fragment_unnamed_702 + mad(fragment_unnamed_660, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_719 = fragment_unnamed_716 + fragment_unnamed_700;
precise float fragment_unnamed_720 = fragment_unnamed_671 + mad(fragment_unnamed_660, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_721 = fragment_unnamed_707 / fragment_unnamed_709;
precise float fragment_unnamed_722 = fragment_unnamed_701 / fragment_unnamed_710;
precise float fragment_unnamed_723 = fragment_unnamed_708 / fragment_unnamed_711;
precise float fragment_unnamed_724 = fragment_unnamed_669 / fragment_unnamed_712;
precise float fragment_unnamed_725 = fragment_unnamed_721 + (-3.5f);
precise float fragment_unnamed_727 = fragment_unnamed_722 + (-1.5f);
precise float fragment_unnamed_729 = fragment_unnamed_723 + 0.5f;
precise float fragment_unnamed_730 = fragment_unnamed_724 + 2.5f;
precise float fragment_unnamed_732 = fragment_unnamed_715 / fragment_unnamed_717;
precise float fragment_unnamed_733 = fragment_unnamed_702 / fragment_unnamed_718;
precise float fragment_unnamed_734 = fragment_unnamed_716 / fragment_unnamed_719;
precise float fragment_unnamed_735 = fragment_unnamed_671 / fragment_unnamed_720;
precise float fragment_unnamed_736 = fragment_unnamed_732 + (-3.5f);
precise float fragment_unnamed_737 = fragment_unnamed_733 + (-1.5f);
precise float fragment_unnamed_738 = fragment_unnamed_734 + 0.5f;
precise float fragment_unnamed_739 = fragment_unnamed_735 + 2.5f;
precise float fragment_unnamed_743 = fragment_unnamed_730 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_744 = fragment_unnamed_725 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_745 = fragment_unnamed_727 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_746 = fragment_unnamed_729 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_750 = fragment_unnamed_736 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_751 = fragment_unnamed_739 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_737 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_753 = fragment_unnamed_738 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_830 = fragment_unnamed_717 * fragment_unnamed_709;
precise float fragment_unnamed_831 = fragment_unnamed_717 * fragment_unnamed_710;
precise float fragment_unnamed_832 = fragment_unnamed_717 * fragment_unnamed_711;
precise float fragment_unnamed_833 = fragment_unnamed_717 * fragment_unnamed_712;
precise float fragment_unnamed_834 = fragment_unnamed_718 * fragment_unnamed_709;
precise float fragment_unnamed_835 = fragment_unnamed_718 * fragment_unnamed_710;
precise float fragment_unnamed_836 = fragment_unnamed_718 * fragment_unnamed_711;
precise float fragment_unnamed_837 = fragment_unnamed_718 * fragment_unnamed_712;
precise float fragment_unnamed_838 = fragment_unnamed_719 * fragment_unnamed_709;
precise float fragment_unnamed_839 = fragment_unnamed_719 * fragment_unnamed_710;
precise float fragment_unnamed_840 = fragment_unnamed_719 * fragment_unnamed_711;
precise float fragment_unnamed_841 = fragment_unnamed_719 * fragment_unnamed_712;
precise float fragment_unnamed_842 = fragment_unnamed_720 * fragment_unnamed_709;
precise float fragment_unnamed_843 = fragment_unnamed_720 * fragment_unnamed_710;
precise float fragment_unnamed_844 = fragment_unnamed_720 * fragment_unnamed_711;
precise float fragment_unnamed_845 = fragment_unnamed_720 * fragment_unnamed_712;
precise float fragment_unnamed_855 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x * fragment_unnamed_831;
float fragment_unnamed_881 = mad(fragment_unnamed_836, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_835, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_834, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_833, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_832, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_830, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_750)), fragment_unnamed_233).xxxx.x, fragment_unnamed_855))))));
float fragment_unnamed_911 = mad(fragment_unnamed_842, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_841, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_840, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_839, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_838, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_744), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_837, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_752)), fragment_unnamed_233).xxxx.x, fragment_unnamed_881))))));
fragment_unnamed_454 = mad(fragment_unnamed_845, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_743), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_844, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, mad(fragment_unnamed_843, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_651, fragment_uniform_buffer_2[28u].x, fragment_unnamed_745), mad(fragment_unnamed_652, fragment_uniform_buffer_2[28u].y, fragment_unnamed_751)), fragment_unnamed_233).xxxx.x, fragment_unnamed_911)));
}
fragment_unnamed_418 = fragment_unnamed_454;
}
fragment_unnamed_417 = fragment_unnamed_418;
}
else
{
fragment_unnamed_417 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_unnamed_233).xxxx.x;
}
precise float fragment_unnamed_422 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_423 = fragment_unnamed_422 + 1.0f;
float fragment_unnamed_436 = asfloat(((((fragment_unnamed_233 >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_unnamed_233) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_417, fragment_uniform_buffer_2[27u].x, fragment_unnamed_423)));
precise float fragment_unnamed_446 = mad(fragment_input_3.x, fragment_unnamed_436, fragment_unnamed_336) * fragment_unnamed_349.x;
precise float fragment_unnamed_447 = mad(fragment_input_3.y, fragment_unnamed_436, fragment_unnamed_337) * fragment_unnamed_349.y;
precise float fragment_unnamed_448 = mad(fragment_input_3.z, fragment_unnamed_436, fragment_unnamed_338) * fragment_unnamed_349.z;
fragment_output_0.x = fragment_unnamed_446;
fragment_output_0.y = fragment_unnamed_447;
fragment_output_0.z = fragment_unnamed_448;
fragment_output_0.w = fragment_unnamed_349.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#ifdef STEREO_INSTANCING_ON
#ifdef _ADDITIONAL_LIGHTS
#ifdef _LIGHT_COOKIES
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4x4 _MainLightWorldToShadow[5];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainTex;
Texture2D<float4> _MainLightShadowmapTexture;
SamplerState sampler_MainTex;
SamplerComparisonState S1;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static uint fragment_input_7;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_5 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_7 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
precise float fragment_unnamed_67 = (-0.0f) - fragment_uniform_buffer_2[20u].x;
precise float fragment_unnamed_70 = (-0.0f) - fragment_uniform_buffer_2[20u].y;
precise float fragment_unnamed_72 = (-0.0f) - fragment_uniform_buffer_2[20u].z;
precise float fragment_unnamed_73 = fragment_input_5.x + fragment_unnamed_67;
precise float fragment_unnamed_74 = fragment_input_5.y + fragment_unnamed_70;
precise float fragment_unnamed_75 = fragment_input_5.z + fragment_unnamed_72;
precise float fragment_unnamed_86 = (-0.0f) - fragment_uniform_buffer_2[21u].x;
precise float fragment_unnamed_88 = (-0.0f) - fragment_uniform_buffer_2[21u].y;
precise float fragment_unnamed_90 = (-0.0f) - fragment_uniform_buffer_2[21u].z;
precise float fragment_unnamed_91 = fragment_input_5.x + fragment_unnamed_86;
precise float fragment_unnamed_92 = fragment_input_5.y + fragment_unnamed_88;
precise float fragment_unnamed_93 = fragment_input_5.z + fragment_unnamed_90;
precise float fragment_unnamed_104 = (-0.0f) - fragment_uniform_buffer_2[22u].x;
precise float fragment_unnamed_106 = (-0.0f) - fragment_uniform_buffer_2[22u].y;
precise float fragment_unnamed_108 = (-0.0f) - fragment_uniform_buffer_2[22u].z;
precise float fragment_unnamed_109 = fragment_input_5.x + fragment_unnamed_104;
precise float fragment_unnamed_110 = fragment_input_5.y + fragment_unnamed_106;
precise float fragment_unnamed_111 = fragment_input_5.z + fragment_unnamed_108;
precise float fragment_unnamed_122 = (-0.0f) - fragment_uniform_buffer_2[23u].x;
precise float fragment_unnamed_124 = (-0.0f) - fragment_uniform_buffer_2[23u].y;
precise float fragment_unnamed_126 = (-0.0f) - fragment_uniform_buffer_2[23u].z;
precise float fragment_unnamed_127 = fragment_input_5.x + fragment_unnamed_122;
precise float fragment_unnamed_128 = fragment_input_5.y + fragment_unnamed_124;
precise float fragment_unnamed_129 = fragment_input_5.z + fragment_unnamed_126;
bool fragment_unnamed_150 = dot(float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75), float3(fragment_unnamed_73, fragment_unnamed_74, fragment_unnamed_75)) < fragment_uniform_buffer_2[24u].x;
bool fragment_unnamed_151 = dot(float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93), float3(fragment_unnamed_91, fragment_unnamed_92, fragment_unnamed_93)) < fragment_uniform_buffer_2[24u].y;
bool fragment_unnamed_152 = dot(float3(fragment_unnamed_109, fragment_unnamed_110, fragment_unnamed_111), float3(fragment_unnamed_109, fragment_unnamed_110, fragment_unnamed_111)) < fragment_uniform_buffer_2[24u].z;
precise float fragment_unnamed_176 = asfloat(fragment_unnamed_150 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_151 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_177 = asfloat(fragment_unnamed_151 ? 3212836864u : 2147483648u) + asfloat((fragment_unnamed_152 ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_178 = asfloat(fragment_unnamed_152 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(fragment_unnamed_127, fragment_unnamed_128, fragment_unnamed_129), float3(fragment_unnamed_127, fragment_unnamed_128, fragment_unnamed_129)) < fragment_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float fragment_unnamed_191 = (-0.0f) - dot(float4(asfloat((fragment_unnamed_150 ? 4294967295u : 0u) & 1065353216u), max(fragment_unnamed_176, 0.0f), max(fragment_unnamed_177, 0.0f), max(fragment_unnamed_178, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float fragment_unnamed_192 = fragment_unnamed_191 + 4.0f;
uint fragment_unnamed_194 = uint(fragment_unnamed_192) << 2u;
uint fragment_unnamed_197 = fragment_unnamed_194 + 1u;
precise float fragment_unnamed_203 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].x;
precise float fragment_unnamed_204 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].y;
precise float fragment_unnamed_205 = fragment_input_5.y * fragment_uniform_buffer_2[fragment_unnamed_197].z;
uint fragment_unnamed_216 = fragment_unnamed_194 + 2u;
uint fragment_unnamed_227 = fragment_unnamed_194 + 3u;
precise float fragment_unnamed_234 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].x, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].x, fragment_input_5.x, fragment_unnamed_203)) + fragment_uniform_buffer_2[fragment_unnamed_227].x;
precise float fragment_unnamed_235 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].y, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].y, fragment_input_5.x, fragment_unnamed_204)) + fragment_uniform_buffer_2[fragment_unnamed_227].y;
precise float fragment_unnamed_236 = mad(fragment_uniform_buffer_2[fragment_unnamed_216].z, fragment_input_5.z, mad(fragment_uniform_buffer_2[fragment_unnamed_194].z, fragment_input_5.x, fragment_unnamed_205)) + fragment_uniform_buffer_2[fragment_unnamed_227].z;
float fragment_unnamed_243 = asfloat(1065353216u);
precise float fragment_unnamed_285 = fragment_input_4.y * fragment_input_4.x;
precise float fragment_unnamed_286 = fragment_input_4.z * fragment_input_4.y;
precise float fragment_unnamed_287 = fragment_input_4.z * fragment_input_4.z;
precise float fragment_unnamed_288 = fragment_input_4.x * fragment_input_4.z;
precise float fragment_unnamed_323 = fragment_input_4.y * fragment_input_4.y;
precise float fragment_unnamed_328 = (-0.0f) - fragment_unnamed_323;
float fragment_unnamed_329 = mad(fragment_input_4.x, fragment_input_4.x, fragment_unnamed_328);
precise float fragment_unnamed_339 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
precise float fragment_unnamed_340 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
precise float fragment_unnamed_341 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_329, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_285, fragment_unnamed_286, fragment_unnamed_287, fragment_unnamed_288))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_4.x, fragment_input_4.y, fragment_input_4.z, fragment_unnamed_243));
float4 fragment_unnamed_352 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
float fragment_unnamed_420;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_421;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_380 = fragment_unnamed_234 + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_381 = fragment_unnamed_235 + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_382 = fragment_unnamed_234 + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_383 = fragment_unnamed_235 + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_400 = fragment_unnamed_234 + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_401 = fragment_unnamed_235 + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_402 = fragment_unnamed_234 + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_403 = fragment_unnamed_235 + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_421 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_380, fragment_unnamed_381), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_382, fragment_unnamed_383), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_400, fragment_unnamed_401), fragment_unnamed_236).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_402, fragment_unnamed_403), fragment_unnamed_236).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_457;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_465 = floor(mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_466 = floor(mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_471 = (-0.0f) - fragment_unnamed_465;
precise float fragment_unnamed_472 = (-0.0f) - fragment_unnamed_466;
float fragment_unnamed_473 = mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, fragment_unnamed_471);
float fragment_unnamed_474 = mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, fragment_unnamed_472);
precise float fragment_unnamed_475 = fragment_unnamed_473 + 0.5f;
precise float fragment_unnamed_476 = fragment_unnamed_473 + 1.0f;
precise float fragment_unnamed_477 = fragment_unnamed_474 + 0.5f;
precise float fragment_unnamed_478 = fragment_unnamed_474 + 1.0f;
precise float fragment_unnamed_479 = fragment_unnamed_475 * fragment_unnamed_475;
precise float fragment_unnamed_480 = fragment_unnamed_475 * fragment_unnamed_475;
precise float fragment_unnamed_481 = fragment_unnamed_477 * fragment_unnamed_477;
precise float fragment_unnamed_482 = fragment_unnamed_477 * fragment_unnamed_477;
precise float fragment_unnamed_483 = fragment_unnamed_480 * 0.07999999821186065673828125f;
precise float fragment_unnamed_485 = fragment_unnamed_482 * 0.07999999821186065673828125f;
precise float fragment_unnamed_486 = (-0.0f) - fragment_unnamed_473;
precise float fragment_unnamed_487 = (-0.0f) - fragment_unnamed_474;
precise float fragment_unnamed_490 = (-0.0f) - fragment_unnamed_473;
precise float fragment_unnamed_491 = (-0.0f) - fragment_unnamed_474;
precise float fragment_unnamed_492 = fragment_unnamed_490 + 1.0f;
precise float fragment_unnamed_493 = fragment_unnamed_491 + 1.0f;
float fragment_unnamed_494 = min(fragment_unnamed_473, 0.0f);
float fragment_unnamed_495 = min(fragment_unnamed_474, 0.0f);
precise float fragment_unnamed_496 = (-0.0f) - fragment_unnamed_494;
precise float fragment_unnamed_497 = (-0.0f) - fragment_unnamed_495;
float fragment_unnamed_500 = max(fragment_unnamed_473, 0.0f);
float fragment_unnamed_501 = max(fragment_unnamed_474, 0.0f);
precise float fragment_unnamed_502 = (-0.0f) - fragment_unnamed_500;
precise float fragment_unnamed_503 = (-0.0f) - fragment_unnamed_501;
precise float fragment_unnamed_506 = mad(fragment_unnamed_496, fragment_unnamed_494, fragment_unnamed_492) + 1.0f;
precise float fragment_unnamed_507 = mad(fragment_unnamed_497, fragment_unnamed_495, fragment_unnamed_493) + 1.0f;
precise float fragment_unnamed_508 = mad(fragment_unnamed_502, fragment_unnamed_500, fragment_unnamed_476) + 1.0f;
precise float fragment_unnamed_509 = mad(fragment_unnamed_503, fragment_unnamed_501, fragment_unnamed_478) + 1.0f;
precise float fragment_unnamed_510 = mad(fragment_unnamed_479, 0.5f, fragment_unnamed_486) * 0.1599999964237213134765625f;
precise float fragment_unnamed_512 = mad(fragment_unnamed_481, 0.5f, fragment_unnamed_487) * 0.1599999964237213134765625f;
precise float fragment_unnamed_513 = fragment_unnamed_492 * 0.1599999964237213134765625f;
precise float fragment_unnamed_514 = fragment_unnamed_493 * 0.1599999964237213134765625f;
precise float fragment_unnamed_515 = fragment_unnamed_506 * 0.1599999964237213134765625f;
precise float fragment_unnamed_516 = fragment_unnamed_507 * 0.1599999964237213134765625f;
precise float fragment_unnamed_517 = fragment_unnamed_508 * 0.1599999964237213134765625f;
precise float fragment_unnamed_518 = fragment_unnamed_509 * 0.1599999964237213134765625f;
precise float fragment_unnamed_519 = fragment_unnamed_476 * 0.1599999964237213134765625f;
precise float fragment_unnamed_520 = fragment_unnamed_478 * 0.1599999964237213134765625f;
precise float fragment_unnamed_521 = fragment_unnamed_517 + fragment_unnamed_515;
precise float fragment_unnamed_522 = fragment_unnamed_483 + fragment_unnamed_519;
precise float fragment_unnamed_523 = fragment_unnamed_513 + fragment_unnamed_510;
precise float fragment_unnamed_524 = fragment_unnamed_517 + fragment_unnamed_515;
precise float fragment_unnamed_525 = fragment_unnamed_512 + fragment_unnamed_514;
precise float fragment_unnamed_526 = fragment_unnamed_516 + fragment_unnamed_518;
precise float fragment_unnamed_527 = fragment_unnamed_520 + fragment_unnamed_485;
precise float fragment_unnamed_528 = fragment_unnamed_513 / fragment_unnamed_523;
precise float fragment_unnamed_529 = fragment_unnamed_517 / fragment_unnamed_524;
precise float fragment_unnamed_530 = fragment_unnamed_483 / fragment_unnamed_522;
precise float fragment_unnamed_531 = fragment_unnamed_528 + (-2.5f);
precise float fragment_unnamed_533 = fragment_unnamed_529 + (-0.5f);
precise float fragment_unnamed_535 = fragment_unnamed_530 + 1.5f;
precise float fragment_unnamed_537 = fragment_unnamed_514 / fragment_unnamed_525;
precise float fragment_unnamed_538 = fragment_unnamed_518 / fragment_unnamed_526;
precise float fragment_unnamed_539 = fragment_unnamed_485 / fragment_unnamed_527;
precise float fragment_unnamed_540 = fragment_unnamed_537 + (-2.5f);
precise float fragment_unnamed_541 = fragment_unnamed_538 + (-0.5f);
precise float fragment_unnamed_542 = fragment_unnamed_539 + 1.5f;
precise float fragment_unnamed_546 = fragment_unnamed_533 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_547 = fragment_unnamed_531 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_548 = fragment_unnamed_535 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_552 = fragment_unnamed_540 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_553 = fragment_unnamed_541 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_554 = fragment_unnamed_542 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_593 = fragment_unnamed_525 * fragment_unnamed_523;
precise float fragment_unnamed_594 = fragment_unnamed_525 * fragment_unnamed_524;
precise float fragment_unnamed_595 = fragment_unnamed_525 * fragment_unnamed_522;
precise float fragment_unnamed_596 = fragment_unnamed_526 * fragment_unnamed_523;
precise float fragment_unnamed_597 = fragment_unnamed_526 * fragment_unnamed_521;
precise float fragment_unnamed_598 = fragment_unnamed_526 * fragment_unnamed_522;
precise float fragment_unnamed_599 = fragment_unnamed_527 * fragment_unnamed_523;
precise float fragment_unnamed_600 = fragment_unnamed_527 * fragment_unnamed_524;
precise float fragment_unnamed_601 = fragment_unnamed_527 * fragment_unnamed_522;
precise float fragment_unnamed_611 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x * fragment_unnamed_594;
float fragment_unnamed_637 = mad(fragment_unnamed_599, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_598, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_597, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_596, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_553)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_595, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_593, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_547), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_552)), fragment_unnamed_236).xxxx.x, fragment_unnamed_611))))));
fragment_unnamed_457 = mad(fragment_unnamed_601, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_548), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_600, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_465, fragment_uniform_buffer_2[28u].x, fragment_unnamed_546), mad(fragment_unnamed_466, fragment_uniform_buffer_2[28u].y, fragment_unnamed_554)), fragment_unnamed_236).xxxx.x, fragment_unnamed_637));
}
else
{
float fragment_unnamed_654 = floor(mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_655 = floor(mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_660 = (-0.0f) - fragment_unnamed_654;
precise float fragment_unnamed_661 = (-0.0f) - fragment_unnamed_655;
float fragment_unnamed_662 = mad(fragment_unnamed_234, fragment_uniform_buffer_2[28u].z, fragment_unnamed_660);
float fragment_unnamed_663 = mad(fragment_unnamed_235, fragment_uniform_buffer_2[28u].w, fragment_unnamed_661);
precise float fragment_unnamed_664 = fragment_unnamed_662 + 0.5f;
precise float fragment_unnamed_665 = fragment_unnamed_662 + 1.0f;
precise float fragment_unnamed_666 = fragment_unnamed_663 + 0.5f;
precise float fragment_unnamed_667 = fragment_unnamed_663 + 1.0f;
precise float fragment_unnamed_668 = fragment_unnamed_664 * fragment_unnamed_664;
precise float fragment_unnamed_669 = fragment_unnamed_664 * fragment_unnamed_664;
precise float fragment_unnamed_670 = fragment_unnamed_666 * fragment_unnamed_666;
precise float fragment_unnamed_671 = fragment_unnamed_666 * fragment_unnamed_666;
precise float fragment_unnamed_672 = fragment_unnamed_669 * 0.040816001594066619873046875f;
precise float fragment_unnamed_674 = fragment_unnamed_671 * 0.040816001594066619873046875f;
precise float fragment_unnamed_675 = (-0.0f) - fragment_unnamed_662;
precise float fragment_unnamed_676 = (-0.0f) - fragment_unnamed_663;
precise float fragment_unnamed_679 = (-0.0f) - fragment_unnamed_662;
precise float fragment_unnamed_680 = (-0.0f) - fragment_unnamed_663;
precise float fragment_unnamed_681 = fragment_unnamed_679 + 1.0f;
precise float fragment_unnamed_682 = fragment_unnamed_680 + 1.0f;
float fragment_unnamed_683 = min(fragment_unnamed_662, 0.0f);
float fragment_unnamed_684 = min(fragment_unnamed_663, 0.0f);
precise float fragment_unnamed_685 = (-0.0f) - fragment_unnamed_683;
precise float fragment_unnamed_686 = (-0.0f) - fragment_unnamed_684;
float fragment_unnamed_689 = max(fragment_unnamed_662, 0.0f);
float fragment_unnamed_690 = max(fragment_unnamed_663, 0.0f);
precise float fragment_unnamed_691 = (-0.0f) - fragment_unnamed_689;
precise float fragment_unnamed_692 = (-0.0f) - fragment_unnamed_690;
precise float fragment_unnamed_695 = mad(fragment_unnamed_685, fragment_unnamed_683, fragment_unnamed_681) + 2.0f;
precise float fragment_unnamed_696 = mad(fragment_unnamed_686, fragment_unnamed_684, fragment_unnamed_682) + 2.0f;
precise float fragment_unnamed_697 = mad(fragment_unnamed_691, fragment_unnamed_689, fragment_unnamed_665) + 2.0f;
precise float fragment_unnamed_698 = mad(fragment_unnamed_692, fragment_unnamed_690, fragment_unnamed_667) + 2.0f;
precise float fragment_unnamed_699 = fragment_unnamed_697 * 0.08163200318813323974609375f;
precise float fragment_unnamed_701 = mad(fragment_unnamed_670, 0.5f, fragment_unnamed_676) * 0.08163200318813323974609375f;
precise float fragment_unnamed_702 = mad(fragment_unnamed_668, 0.5f, fragment_unnamed_675) * 0.08163200318813323974609375f;
precise float fragment_unnamed_703 = fragment_unnamed_698 * 0.08163200318813323974609375f;
precise float fragment_unnamed_704 = fragment_unnamed_695 * 0.08163200318813323974609375f;
precise float fragment_unnamed_705 = fragment_unnamed_696 * 0.08163200318813323974609375f;
float fragment_unnamed_710 = mad(fragment_unnamed_662, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_711 = mad(fragment_unnamed_662, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_712 = fragment_unnamed_710 + fragment_unnamed_702;
precise float fragment_unnamed_713 = fragment_unnamed_704 + mad(fragment_unnamed_662, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_714 = fragment_unnamed_711 + fragment_unnamed_699;
precise float fragment_unnamed_715 = fragment_unnamed_672 + mad(fragment_unnamed_662, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_718 = mad(fragment_unnamed_663, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_719 = mad(fragment_unnamed_663, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_720 = fragment_unnamed_718 + fragment_unnamed_701;
precise float fragment_unnamed_721 = fragment_unnamed_705 + mad(fragment_unnamed_663, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_722 = fragment_unnamed_719 + fragment_unnamed_703;
precise float fragment_unnamed_723 = fragment_unnamed_674 + mad(fragment_unnamed_663, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_724 = fragment_unnamed_710 / fragment_unnamed_712;
precise float fragment_unnamed_725 = fragment_unnamed_704 / fragment_unnamed_713;
precise float fragment_unnamed_726 = fragment_unnamed_711 / fragment_unnamed_714;
precise float fragment_unnamed_727 = fragment_unnamed_672 / fragment_unnamed_715;
precise float fragment_unnamed_728 = fragment_unnamed_724 + (-3.5f);
precise float fragment_unnamed_730 = fragment_unnamed_725 + (-1.5f);
precise float fragment_unnamed_732 = fragment_unnamed_726 + 0.5f;
precise float fragment_unnamed_733 = fragment_unnamed_727 + 2.5f;
precise float fragment_unnamed_735 = fragment_unnamed_718 / fragment_unnamed_720;
precise float fragment_unnamed_736 = fragment_unnamed_705 / fragment_unnamed_721;
precise float fragment_unnamed_737 = fragment_unnamed_719 / fragment_unnamed_722;
precise float fragment_unnamed_738 = fragment_unnamed_674 / fragment_unnamed_723;
precise float fragment_unnamed_739 = fragment_unnamed_735 + (-3.5f);
precise float fragment_unnamed_740 = fragment_unnamed_736 + (-1.5f);
precise float fragment_unnamed_741 = fragment_unnamed_737 + 0.5f;
precise float fragment_unnamed_742 = fragment_unnamed_738 + 2.5f;
precise float fragment_unnamed_746 = fragment_unnamed_733 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_747 = fragment_unnamed_728 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_748 = fragment_unnamed_730 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_749 = fragment_unnamed_732 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_753 = fragment_unnamed_739 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_754 = fragment_unnamed_742 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_755 = fragment_unnamed_740 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_756 = fragment_unnamed_741 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_833 = fragment_unnamed_720 * fragment_unnamed_712;
precise float fragment_unnamed_834 = fragment_unnamed_720 * fragment_unnamed_713;
precise float fragment_unnamed_835 = fragment_unnamed_720 * fragment_unnamed_714;
precise float fragment_unnamed_836 = fragment_unnamed_720 * fragment_unnamed_715;
precise float fragment_unnamed_837 = fragment_unnamed_721 * fragment_unnamed_712;
precise float fragment_unnamed_838 = fragment_unnamed_721 * fragment_unnamed_713;
precise float fragment_unnamed_839 = fragment_unnamed_721 * fragment_unnamed_714;
precise float fragment_unnamed_840 = fragment_unnamed_721 * fragment_unnamed_715;
precise float fragment_unnamed_841 = fragment_unnamed_722 * fragment_unnamed_712;
precise float fragment_unnamed_842 = fragment_unnamed_722 * fragment_unnamed_713;
precise float fragment_unnamed_843 = fragment_unnamed_722 * fragment_unnamed_714;
precise float fragment_unnamed_844 = fragment_unnamed_722 * fragment_unnamed_715;
precise float fragment_unnamed_845 = fragment_unnamed_723 * fragment_unnamed_712;
precise float fragment_unnamed_846 = fragment_unnamed_723 * fragment_unnamed_713;
precise float fragment_unnamed_847 = fragment_unnamed_723 * fragment_unnamed_714;
precise float fragment_unnamed_848 = fragment_unnamed_723 * fragment_unnamed_715;
precise float fragment_unnamed_858 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x * fragment_unnamed_834;
float fragment_unnamed_884 = mad(fragment_unnamed_839, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_838, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_837, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_836, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_835, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_833, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_753)), fragment_unnamed_236).xxxx.x, fragment_unnamed_858))))));
float fragment_unnamed_914 = mad(fragment_unnamed_845, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_844, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_843, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_842, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_841, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_747), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_756)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_840, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_755)), fragment_unnamed_236).xxxx.x, fragment_unnamed_884))))));
fragment_unnamed_457 = mad(fragment_unnamed_848, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_746), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_847, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_749), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, mad(fragment_unnamed_846, _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(mad(fragment_unnamed_654, fragment_uniform_buffer_2[28u].x, fragment_unnamed_748), mad(fragment_unnamed_655, fragment_uniform_buffer_2[28u].y, fragment_unnamed_754)), fragment_unnamed_236).xxxx.x, fragment_unnamed_914)));
}
fragment_unnamed_421 = fragment_unnamed_457;
}
fragment_unnamed_420 = fragment_unnamed_421;
}
else
{
fragment_unnamed_420 = _MainLightShadowmapTexture.SampleCmpLevelZero(S1, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_unnamed_236).xxxx.x;
}
precise float fragment_unnamed_425 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_426 = fragment_unnamed_425 + 1.0f;
float fragment_unnamed_439 = asfloat(((((fragment_unnamed_236 >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_unnamed_236) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_420, fragment_uniform_buffer_2[27u].x, fragment_unnamed_426)));
precise float fragment_unnamed_449 = mad(fragment_input_3.x, fragment_unnamed_439, fragment_unnamed_339) * fragment_unnamed_352.x;
precise float fragment_unnamed_450 = mad(fragment_input_3.y, fragment_unnamed_439, fragment_unnamed_340) * fragment_unnamed_352.y;
precise float fragment_unnamed_451 = mad(fragment_input_3.z, fragment_unnamed_439, fragment_unnamed_341) * fragment_unnamed_352.z;
fragment_output_0.x = fragment_unnamed_449;
fragment_output_0.y = fragment_unnamed_450;
fragment_output_0.z = fragment_unnamed_451;
fragment_output_0.w = fragment_unnamed_352.w;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
fragment_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
fragment_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
fragment_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
fragment_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
fragment_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
fragment_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
fragment_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
fragment_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
fragment_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
fragment_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
fragment_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
fragment_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
fragment_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
fragment_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
fragment_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
fragment_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
fragment_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
fragment_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
fragment_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
fragment_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
fragment_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
fragment_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
fragment_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
fragment_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_7 = stage_input.fragment_input_7;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _ADDITIONAL_LIGHTS
#endif // _LIGHT_COOKIES
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS
// Fallback Shader Code
#ifndef ANY_SHADER_VARIANT_ACTIVE
// https://docs.unity3d.com/Manual/SL-UnityShaderVariables.html
float4x4 unity_MatrixMVP;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
};
struct Vertex_Stage_Output
{
float4 pos : SV_POSITION;
};
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
return output;
}
float4 frag(Vertex_Stage_Output input) : SV_TARGET
{
// Output solid grey color (e.g., 50% grey)
return float4(0.5, 0.5, 0.5, 1.0); // RGBA
}
#endif // !ANY_SHADER_VARIANT_ACTIVE
ENDHLSL
}
Pass
{
Name "TerrainDetailVertex - GBuffer"
LOD 100
Tags { "IGNOREPROJECTOR" = "true" "LIGHTMODE" = "UniversalGBuffer" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Opaque" "UniversalMaterialType" = "Unlit" }
GpuProgramID 104492
HLSLPROGRAM
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
#pragma vertex vert
#pragma fragment frag
#pragma target 4.0
#pragma multi_compile _ STEREO_INSTANCING_ON
#pragma shader_feature _MAIN_LIGHT_SHADOWS
#pragma shader_feature _MAIN_LIGHT_SHADOWS_CASCADE
#pragma multi_compile _ _MIXED_LIGHTING_SUBTRACTIVE
#pragma multi_compile _ _SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[132];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[20];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[131u].x, vertex_uniform_buffer_0[131u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[131u].y, vertex_uniform_buffer_0[131u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_96 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_111 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_126 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_134 = rsqrt(max(dot(float3(vertex_unnamed_96, vertex_unnamed_111, vertex_unnamed_126), float3(vertex_unnamed_96, vertex_unnamed_111, vertex_unnamed_126)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_135 = vertex_unnamed_134 * vertex_unnamed_96;
precise float vertex_unnamed_136 = vertex_unnamed_134 * vertex_unnamed_111;
precise float vertex_unnamed_137 = vertex_unnamed_134 * vertex_unnamed_126;
float vertex_unnamed_147 = clamp(dot(float3(vertex_unnamed_135, vertex_unnamed_136, vertex_unnamed_137), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_135;
vertex_output_5.y = vertex_unnamed_136;
vertex_output_5.z = vertex_unnamed_137;
precise float vertex_unnamed_160 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_161 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_162 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_163 = vertex_unnamed_147 * vertex_unnamed_160;
precise float vertex_unnamed_164 = vertex_unnamed_147 * vertex_unnamed_161;
precise float vertex_unnamed_165 = vertex_unnamed_147 * vertex_unnamed_162;
vertex_output_3.x = vertex_unnamed_163;
vertex_output_3.y = vertex_unnamed_164;
vertex_output_3.z = vertex_unnamed_165;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_178 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_179 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_180 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_206 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_178)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_207 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_179)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_208 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_180)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_214 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].x;
precise float vertex_unnamed_215 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].y;
precise float vertex_unnamed_216 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].z;
precise float vertex_unnamed_238 = mad(vertex_uniform_buffer_2[2u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].x, vertex_unnamed_206, vertex_unnamed_214)) + vertex_uniform_buffer_2[3u].x;
precise float vertex_unnamed_239 = mad(vertex_uniform_buffer_2[2u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].y, vertex_unnamed_206, vertex_unnamed_215)) + vertex_uniform_buffer_2[3u].y;
precise float vertex_unnamed_240 = mad(vertex_uniform_buffer_2[2u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].z, vertex_unnamed_206, vertex_unnamed_216)) + vertex_uniform_buffer_2[3u].z;
vertex_output_4.x = vertex_unnamed_238;
vertex_output_4.y = vertex_unnamed_239;
vertex_output_4.z = vertex_unnamed_240;
vertex_output_6.x = vertex_unnamed_206;
vertex_output_6.y = vertex_unnamed_207;
vertex_output_6.z = vertex_unnamed_208;
precise float vertex_unnamed_254 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_255 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_256 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_257 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_287 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_206, vertex_unnamed_254)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_288 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_206, vertex_unnamed_255)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_289 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_206, vertex_unnamed_256)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_290 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_206, vertex_unnamed_257)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_287;
gl_Position.y = vertex_unnamed_288;
gl_Position.z = vertex_unnamed_289;
gl_Position.w = vertex_unnamed_290;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[131] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[101];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 vertex_uniform_buffer_3[20];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
static uint vertex_output_8;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_8 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[100u].x, vertex_uniform_buffer_0[100u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[100u].y, vertex_uniform_buffer_0[100u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_106 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_121 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_136 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_144 = rsqrt(max(dot(float3(vertex_unnamed_106, vertex_unnamed_121, vertex_unnamed_136), float3(vertex_unnamed_106, vertex_unnamed_121, vertex_unnamed_136)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_145 = vertex_unnamed_144 * vertex_unnamed_106;
precise float vertex_unnamed_146 = vertex_unnamed_144 * vertex_unnamed_121;
precise float vertex_unnamed_147 = vertex_unnamed_144 * vertex_unnamed_136;
float vertex_unnamed_157 = clamp(dot(float3(vertex_unnamed_145, vertex_unnamed_146, vertex_unnamed_147), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_145;
vertex_output_5.y = vertex_unnamed_146;
vertex_output_5.z = vertex_unnamed_147;
precise float vertex_unnamed_170 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_171 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_172 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_173 = vertex_unnamed_157 * vertex_unnamed_170;
precise float vertex_unnamed_174 = vertex_unnamed_157 * vertex_unnamed_171;
precise float vertex_unnamed_175 = vertex_unnamed_157 * vertex_unnamed_172;
vertex_output_3.x = vertex_unnamed_173;
vertex_output_3.y = vertex_unnamed_174;
vertex_output_3.z = vertex_unnamed_175;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_188 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_189 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_190 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_216 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_188)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_217 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_189)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_218 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_190)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_224 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].x;
precise float vertex_unnamed_225 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].y;
precise float vertex_unnamed_226 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].z;
precise float vertex_unnamed_248 = mad(vertex_uniform_buffer_3[2u].x, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].x, vertex_unnamed_216, vertex_unnamed_224)) + vertex_uniform_buffer_3[3u].x;
precise float vertex_unnamed_249 = mad(vertex_uniform_buffer_3[2u].y, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].y, vertex_unnamed_216, vertex_unnamed_225)) + vertex_uniform_buffer_3[3u].y;
precise float vertex_unnamed_250 = mad(vertex_uniform_buffer_3[2u].z, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].z, vertex_unnamed_216, vertex_unnamed_226)) + vertex_uniform_buffer_3[3u].z;
vertex_output_4.x = vertex_unnamed_248;
vertex_output_4.y = vertex_unnamed_249;
vertex_output_4.z = vertex_unnamed_250;
vertex_output_6.x = vertex_unnamed_216;
vertex_output_6.y = vertex_unnamed_217;
vertex_output_6.z = vertex_unnamed_218;
uint vertex_unnamed_261 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_262 = vertex_unnamed_261 << 2u;
gl_Layer = int(vertex_unnamed_261);
uint vertex_unnamed_263 = vertex_unnamed_262 + 33u;
precise float vertex_unnamed_271 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].x;
precise float vertex_unnamed_272 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].y;
precise float vertex_unnamed_273 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].z;
precise float vertex_unnamed_274 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].w;
uint vertex_unnamed_275 = vertex_unnamed_262 + 32u;
uint vertex_unnamed_287 = vertex_unnamed_262 + 34u;
uint vertex_unnamed_299 = vertex_unnamed_262 + 35u;
precise float vertex_unnamed_307 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].x, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].x, vertex_unnamed_216, vertex_unnamed_271)) + vertex_uniform_buffer_2[vertex_unnamed_299].x;
precise float vertex_unnamed_308 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].y, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].y, vertex_unnamed_216, vertex_unnamed_272)) + vertex_uniform_buffer_2[vertex_unnamed_299].y;
precise float vertex_unnamed_309 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].z, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].z, vertex_unnamed_216, vertex_unnamed_273)) + vertex_uniform_buffer_2[vertex_unnamed_299].z;
precise float vertex_unnamed_310 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].w, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].w, vertex_unnamed_216, vertex_unnamed_274)) + vertex_uniform_buffer_2[vertex_unnamed_299].w;
gl_Position.x = vertex_unnamed_307;
gl_Position.y = vertex_unnamed_308;
gl_Position.z = vertex_unnamed_309;
gl_Position.w = vertex_unnamed_310;
vertex_output_8 = uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB);
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[100] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_3[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_3[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_3[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_3[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_3[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_3[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_3[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_3[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_3[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_3[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_3[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_3[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_3[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_3[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_3[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_3[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_3[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_3[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_3[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_3[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
stage_output.vertex_output_8 = vertex_output_8;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[132];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[20];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[131u].x, vertex_uniform_buffer_0[131u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[131u].y, vertex_uniform_buffer_0[131u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_96 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_111 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_126 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_134 = rsqrt(max(dot(float3(vertex_unnamed_96, vertex_unnamed_111, vertex_unnamed_126), float3(vertex_unnamed_96, vertex_unnamed_111, vertex_unnamed_126)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_135 = vertex_unnamed_134 * vertex_unnamed_96;
precise float vertex_unnamed_136 = vertex_unnamed_134 * vertex_unnamed_111;
precise float vertex_unnamed_137 = vertex_unnamed_134 * vertex_unnamed_126;
float vertex_unnamed_147 = clamp(dot(float3(vertex_unnamed_135, vertex_unnamed_136, vertex_unnamed_137), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_135;
vertex_output_5.y = vertex_unnamed_136;
vertex_output_5.z = vertex_unnamed_137;
precise float vertex_unnamed_160 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_161 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_162 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_163 = vertex_unnamed_147 * vertex_unnamed_160;
precise float vertex_unnamed_164 = vertex_unnamed_147 * vertex_unnamed_161;
precise float vertex_unnamed_165 = vertex_unnamed_147 * vertex_unnamed_162;
vertex_output_3.x = vertex_unnamed_163;
vertex_output_3.y = vertex_unnamed_164;
vertex_output_3.z = vertex_unnamed_165;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_178 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_179 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_180 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_206 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_178)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_207 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_179)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_208 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_180)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_214 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].x;
precise float vertex_unnamed_215 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].y;
precise float vertex_unnamed_216 = vertex_unnamed_207 * vertex_uniform_buffer_2[1u].z;
precise float vertex_unnamed_238 = mad(vertex_uniform_buffer_2[2u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].x, vertex_unnamed_206, vertex_unnamed_214)) + vertex_uniform_buffer_2[3u].x;
precise float vertex_unnamed_239 = mad(vertex_uniform_buffer_2[2u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].y, vertex_unnamed_206, vertex_unnamed_215)) + vertex_uniform_buffer_2[3u].y;
precise float vertex_unnamed_240 = mad(vertex_uniform_buffer_2[2u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_2[0u].z, vertex_unnamed_206, vertex_unnamed_216)) + vertex_uniform_buffer_2[3u].z;
vertex_output_4.x = vertex_unnamed_238;
vertex_output_4.y = vertex_unnamed_239;
vertex_output_4.z = vertex_unnamed_240;
vertex_output_6.x = vertex_unnamed_206;
vertex_output_6.y = vertex_unnamed_207;
vertex_output_6.z = vertex_unnamed_208;
precise float vertex_unnamed_254 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_255 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_256 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_257 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_287 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_206, vertex_unnamed_254)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_288 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_206, vertex_unnamed_255)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_289 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_206, vertex_unnamed_256)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_290 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_206, vertex_unnamed_257)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_287;
gl_Position.y = vertex_unnamed_288;
gl_Position.z = vertex_unnamed_289;
gl_Position.w = vertex_unnamed_290;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[131] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_2[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_2[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_2[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_2[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_2[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_2[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_2[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_2[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_2[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_2[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_2[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_2[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_2[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_2[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_2[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_2[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_2[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_2[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_2[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
float4x4 _MainLightWorldToShadow[5];
static float4 vertex_uniform_buffer_0[101];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 vertex_uniform_buffer_3[20];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
static uint vertex_output_8;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_8 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[100u].x, vertex_uniform_buffer_0[100u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[100u].y, vertex_uniform_buffer_0[100u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_106 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_121 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_136 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_144 = rsqrt(max(dot(float3(vertex_unnamed_106, vertex_unnamed_121, vertex_unnamed_136), float3(vertex_unnamed_106, vertex_unnamed_121, vertex_unnamed_136)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_145 = vertex_unnamed_144 * vertex_unnamed_106;
precise float vertex_unnamed_146 = vertex_unnamed_144 * vertex_unnamed_121;
precise float vertex_unnamed_147 = vertex_unnamed_144 * vertex_unnamed_136;
float vertex_unnamed_157 = clamp(dot(float3(vertex_unnamed_145, vertex_unnamed_146, vertex_unnamed_147), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_145;
vertex_output_5.y = vertex_unnamed_146;
vertex_output_5.z = vertex_unnamed_147;
precise float vertex_unnamed_170 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_171 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_172 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_173 = vertex_unnamed_157 * vertex_unnamed_170;
precise float vertex_unnamed_174 = vertex_unnamed_157 * vertex_unnamed_171;
precise float vertex_unnamed_175 = vertex_unnamed_157 * vertex_unnamed_172;
vertex_output_3.x = vertex_unnamed_173;
vertex_output_3.y = vertex_unnamed_174;
vertex_output_3.z = vertex_unnamed_175;
vertex_output_3.w = 0.0f;
vertex_output_4.w = 0.0f;
precise float vertex_unnamed_188 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_189 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_190 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_216 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_188)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_217 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_189)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_218 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_190)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_224 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].x;
precise float vertex_unnamed_225 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].y;
precise float vertex_unnamed_226 = vertex_unnamed_217 * vertex_uniform_buffer_3[1u].z;
precise float vertex_unnamed_248 = mad(vertex_uniform_buffer_3[2u].x, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].x, vertex_unnamed_216, vertex_unnamed_224)) + vertex_uniform_buffer_3[3u].x;
precise float vertex_unnamed_249 = mad(vertex_uniform_buffer_3[2u].y, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].y, vertex_unnamed_216, vertex_unnamed_225)) + vertex_uniform_buffer_3[3u].y;
precise float vertex_unnamed_250 = mad(vertex_uniform_buffer_3[2u].z, vertex_unnamed_218, mad(vertex_uniform_buffer_3[0u].z, vertex_unnamed_216, vertex_unnamed_226)) + vertex_uniform_buffer_3[3u].z;
vertex_output_4.x = vertex_unnamed_248;
vertex_output_4.y = vertex_unnamed_249;
vertex_output_4.z = vertex_unnamed_250;
vertex_output_6.x = vertex_unnamed_216;
vertex_output_6.y = vertex_unnamed_217;
vertex_output_6.z = vertex_unnamed_218;
uint vertex_unnamed_261 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_262 = vertex_unnamed_261 << 2u;
gl_Layer = int(vertex_unnamed_261);
uint vertex_unnamed_263 = vertex_unnamed_262 + 33u;
precise float vertex_unnamed_271 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].x;
precise float vertex_unnamed_272 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].y;
precise float vertex_unnamed_273 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].z;
precise float vertex_unnamed_274 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_263].w;
uint vertex_unnamed_275 = vertex_unnamed_262 + 32u;
uint vertex_unnamed_287 = vertex_unnamed_262 + 34u;
uint vertex_unnamed_299 = vertex_unnamed_262 + 35u;
precise float vertex_unnamed_307 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].x, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].x, vertex_unnamed_216, vertex_unnamed_271)) + vertex_uniform_buffer_2[vertex_unnamed_299].x;
precise float vertex_unnamed_308 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].y, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].y, vertex_unnamed_216, vertex_unnamed_272)) + vertex_uniform_buffer_2[vertex_unnamed_299].y;
precise float vertex_unnamed_309 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].z, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].z, vertex_unnamed_216, vertex_unnamed_273)) + vertex_uniform_buffer_2[vertex_unnamed_299].z;
precise float vertex_unnamed_310 = mad(vertex_uniform_buffer_2[vertex_unnamed_287].w, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_275].w, vertex_unnamed_216, vertex_unnamed_274)) + vertex_uniform_buffer_2[vertex_unnamed_299].w;
gl_Position.x = vertex_unnamed_307;
gl_Position.y = vertex_unnamed_308;
gl_Position.z = vertex_unnamed_309;
gl_Position.w = vertex_unnamed_310;
vertex_output_8 = uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB);
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[100] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_3[0] = float4(_MainLightWorldToShadow[0][0][0], _MainLightWorldToShadow[0][1][0], _MainLightWorldToShadow[0][2][0], _MainLightWorldToShadow[0][3][0]);
vertex_uniform_buffer_3[1] = float4(_MainLightWorldToShadow[0][0][1], _MainLightWorldToShadow[0][1][1], _MainLightWorldToShadow[0][2][1], _MainLightWorldToShadow[0][3][1]);
vertex_uniform_buffer_3[2] = float4(_MainLightWorldToShadow[0][0][2], _MainLightWorldToShadow[0][1][2], _MainLightWorldToShadow[0][2][2], _MainLightWorldToShadow[0][3][2]);
vertex_uniform_buffer_3[3] = float4(_MainLightWorldToShadow[0][0][3], _MainLightWorldToShadow[0][1][3], _MainLightWorldToShadow[0][2][3], _MainLightWorldToShadow[0][3][3]);
vertex_uniform_buffer_3[4] = float4(_MainLightWorldToShadow[1][0][0], _MainLightWorldToShadow[1][1][0], _MainLightWorldToShadow[1][2][0], _MainLightWorldToShadow[1][3][0]);
vertex_uniform_buffer_3[5] = float4(_MainLightWorldToShadow[1][0][1], _MainLightWorldToShadow[1][1][1], _MainLightWorldToShadow[1][2][1], _MainLightWorldToShadow[1][3][1]);
vertex_uniform_buffer_3[6] = float4(_MainLightWorldToShadow[1][0][2], _MainLightWorldToShadow[1][1][2], _MainLightWorldToShadow[1][2][2], _MainLightWorldToShadow[1][3][2]);
vertex_uniform_buffer_3[7] = float4(_MainLightWorldToShadow[1][0][3], _MainLightWorldToShadow[1][1][3], _MainLightWorldToShadow[1][2][3], _MainLightWorldToShadow[1][3][3]);
vertex_uniform_buffer_3[8] = float4(_MainLightWorldToShadow[2][0][0], _MainLightWorldToShadow[2][1][0], _MainLightWorldToShadow[2][2][0], _MainLightWorldToShadow[2][3][0]);
vertex_uniform_buffer_3[9] = float4(_MainLightWorldToShadow[2][0][1], _MainLightWorldToShadow[2][1][1], _MainLightWorldToShadow[2][2][1], _MainLightWorldToShadow[2][3][1]);
vertex_uniform_buffer_3[10] = float4(_MainLightWorldToShadow[2][0][2], _MainLightWorldToShadow[2][1][2], _MainLightWorldToShadow[2][2][2], _MainLightWorldToShadow[2][3][2]);
vertex_uniform_buffer_3[11] = float4(_MainLightWorldToShadow[2][0][3], _MainLightWorldToShadow[2][1][3], _MainLightWorldToShadow[2][2][3], _MainLightWorldToShadow[2][3][3]);
vertex_uniform_buffer_3[12] = float4(_MainLightWorldToShadow[3][0][0], _MainLightWorldToShadow[3][1][0], _MainLightWorldToShadow[3][2][0], _MainLightWorldToShadow[3][3][0]);
vertex_uniform_buffer_3[13] = float4(_MainLightWorldToShadow[3][0][1], _MainLightWorldToShadow[3][1][1], _MainLightWorldToShadow[3][2][1], _MainLightWorldToShadow[3][3][1]);
vertex_uniform_buffer_3[14] = float4(_MainLightWorldToShadow[3][0][2], _MainLightWorldToShadow[3][1][2], _MainLightWorldToShadow[3][2][2], _MainLightWorldToShadow[3][3][2]);
vertex_uniform_buffer_3[15] = float4(_MainLightWorldToShadow[3][0][3], _MainLightWorldToShadow[3][1][3], _MainLightWorldToShadow[3][2][3], _MainLightWorldToShadow[3][3][3]);
vertex_uniform_buffer_3[16] = float4(_MainLightWorldToShadow[4][0][0], _MainLightWorldToShadow[4][1][0], _MainLightWorldToShadow[4][2][0], _MainLightWorldToShadow[4][3][0]);
vertex_uniform_buffer_3[17] = float4(_MainLightWorldToShadow[4][0][1], _MainLightWorldToShadow[4][1][1], _MainLightWorldToShadow[4][2][1], _MainLightWorldToShadow[4][3][1]);
vertex_uniform_buffer_3[18] = float4(_MainLightWorldToShadow[4][0][2], _MainLightWorldToShadow[4][1][2], _MainLightWorldToShadow[4][2][2], _MainLightWorldToShadow[4][3][2]);
vertex_uniform_buffer_3[19] = float4(_MainLightWorldToShadow[4][0][3], _MainLightWorldToShadow[4][1][3], _MainLightWorldToShadow[4][2][3], _MainLightWorldToShadow[4][3][3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
stage_output.vertex_output_8 = vertex_output_8;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 vertex_uniform_buffer_0[101];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 vertex_uniform_buffer_3[25];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
static uint vertex_output_8;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_8 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[100u].x, vertex_uniform_buffer_0[100u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[100u].y, vertex_uniform_buffer_0[100u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_107 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_122 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_137 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_145 = rsqrt(max(dot(float3(vertex_unnamed_107, vertex_unnamed_122, vertex_unnamed_137), float3(vertex_unnamed_107, vertex_unnamed_122, vertex_unnamed_137)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_146 = vertex_unnamed_145 * vertex_unnamed_107;
precise float vertex_unnamed_147 = vertex_unnamed_145 * vertex_unnamed_122;
precise float vertex_unnamed_148 = vertex_unnamed_145 * vertex_unnamed_137;
float vertex_unnamed_158 = clamp(dot(float3(vertex_unnamed_146, vertex_unnamed_147, vertex_unnamed_148), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_146;
vertex_output_5.y = vertex_unnamed_147;
vertex_output_5.z = vertex_unnamed_148;
precise float vertex_unnamed_171 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_172 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_173 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_174 = vertex_unnamed_158 * vertex_unnamed_171;
precise float vertex_unnamed_175 = vertex_unnamed_158 * vertex_unnamed_172;
precise float vertex_unnamed_176 = vertex_unnamed_158 * vertex_unnamed_173;
vertex_output_3.x = vertex_unnamed_174;
vertex_output_3.y = vertex_unnamed_175;
vertex_output_3.z = vertex_unnamed_176;
vertex_output_3.w = 0.0f;
precise float vertex_unnamed_188 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_189 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_190 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_216 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_188)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_217 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_189)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_218 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_190)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_223 = (-0.0f) - vertex_uniform_buffer_3[20u].x;
precise float vertex_unnamed_226 = (-0.0f) - vertex_uniform_buffer_3[20u].y;
precise float vertex_unnamed_228 = (-0.0f) - vertex_uniform_buffer_3[20u].z;
precise float vertex_unnamed_229 = vertex_unnamed_216 + vertex_unnamed_223;
precise float vertex_unnamed_230 = vertex_unnamed_217 + vertex_unnamed_226;
precise float vertex_unnamed_231 = vertex_unnamed_218 + vertex_unnamed_228;
precise float vertex_unnamed_239 = (-0.0f) - vertex_uniform_buffer_3[21u].x;
precise float vertex_unnamed_241 = (-0.0f) - vertex_uniform_buffer_3[21u].y;
precise float vertex_unnamed_243 = (-0.0f) - vertex_uniform_buffer_3[21u].z;
precise float vertex_unnamed_244 = vertex_unnamed_216 + vertex_unnamed_239;
precise float vertex_unnamed_245 = vertex_unnamed_217 + vertex_unnamed_241;
precise float vertex_unnamed_246 = vertex_unnamed_218 + vertex_unnamed_243;
precise float vertex_unnamed_254 = (-0.0f) - vertex_uniform_buffer_3[22u].x;
precise float vertex_unnamed_256 = (-0.0f) - vertex_uniform_buffer_3[22u].y;
precise float vertex_unnamed_258 = (-0.0f) - vertex_uniform_buffer_3[22u].z;
precise float vertex_unnamed_259 = vertex_unnamed_216 + vertex_unnamed_254;
precise float vertex_unnamed_260 = vertex_unnamed_217 + vertex_unnamed_256;
precise float vertex_unnamed_261 = vertex_unnamed_218 + vertex_unnamed_258;
precise float vertex_unnamed_269 = (-0.0f) - vertex_uniform_buffer_3[23u].x;
precise float vertex_unnamed_271 = (-0.0f) - vertex_uniform_buffer_3[23u].y;
precise float vertex_unnamed_273 = (-0.0f) - vertex_uniform_buffer_3[23u].z;
precise float vertex_unnamed_274 = vertex_unnamed_216 + vertex_unnamed_269;
precise float vertex_unnamed_275 = vertex_unnamed_217 + vertex_unnamed_271;
precise float vertex_unnamed_276 = vertex_unnamed_218 + vertex_unnamed_273;
bool vertex_unnamed_288 = dot(float3(vertex_unnamed_229, vertex_unnamed_230, vertex_unnamed_231), float3(vertex_unnamed_229, vertex_unnamed_230, vertex_unnamed_231)) < vertex_uniform_buffer_3[24u].x;
bool vertex_unnamed_289 = dot(float3(vertex_unnamed_244, vertex_unnamed_245, vertex_unnamed_246), float3(vertex_unnamed_244, vertex_unnamed_245, vertex_unnamed_246)) < vertex_uniform_buffer_3[24u].y;
bool vertex_unnamed_290 = dot(float3(vertex_unnamed_259, vertex_unnamed_260, vertex_unnamed_261), float3(vertex_unnamed_259, vertex_unnamed_260, vertex_unnamed_261)) < vertex_uniform_buffer_3[24u].z;
precise float vertex_unnamed_314 = asfloat(vertex_unnamed_288 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_289 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_315 = asfloat(vertex_unnamed_289 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_290 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_316 = asfloat(vertex_unnamed_290 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(vertex_unnamed_274, vertex_unnamed_275, vertex_unnamed_276), float3(vertex_unnamed_274, vertex_unnamed_275, vertex_unnamed_276)) < vertex_uniform_buffer_3[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_326 = (-0.0f) - dot(float4(asfloat((vertex_unnamed_288 ? 4294967295u : 0u) & 1065353216u), max(vertex_unnamed_314, 0.0f), max(vertex_unnamed_315, 0.0f), max(vertex_unnamed_316, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float vertex_unnamed_327 = vertex_unnamed_326 + 4.0f;
uint vertex_unnamed_329 = uint(vertex_unnamed_327) << 2u;
uint vertex_unnamed_330 = vertex_unnamed_329 + 1u;
precise float vertex_unnamed_336 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].x;
precise float vertex_unnamed_337 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].y;
precise float vertex_unnamed_338 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].z;
uint vertex_unnamed_347 = vertex_unnamed_329 + 2u;
uint vertex_unnamed_356 = vertex_unnamed_329 + 3u;
precise float vertex_unnamed_362 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].x, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].x, vertex_unnamed_216, vertex_unnamed_336)) + vertex_uniform_buffer_3[vertex_unnamed_356].x;
precise float vertex_unnamed_363 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].y, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].y, vertex_unnamed_216, vertex_unnamed_337)) + vertex_uniform_buffer_3[vertex_unnamed_356].y;
precise float vertex_unnamed_364 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].z, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].z, vertex_unnamed_216, vertex_unnamed_338)) + vertex_uniform_buffer_3[vertex_unnamed_356].z;
vertex_output_4.x = vertex_unnamed_362;
vertex_output_4.y = vertex_unnamed_363;
vertex_output_4.z = vertex_unnamed_364;
vertex_output_4.w = 0.0f;
vertex_output_6.x = vertex_unnamed_216;
vertex_output_6.y = vertex_unnamed_217;
vertex_output_6.z = vertex_unnamed_218;
uint vertex_unnamed_376 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_377 = vertex_unnamed_376 << 2u;
gl_Layer = int(vertex_unnamed_376);
uint vertex_unnamed_378 = vertex_unnamed_377 + 33u;
precise float vertex_unnamed_386 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].x;
precise float vertex_unnamed_387 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].y;
precise float vertex_unnamed_388 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].z;
precise float vertex_unnamed_389 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].w;
uint vertex_unnamed_390 = vertex_unnamed_377 + 32u;
uint vertex_unnamed_402 = vertex_unnamed_377 + 34u;
uint vertex_unnamed_414 = vertex_unnamed_377 + 35u;
precise float vertex_unnamed_422 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].x, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].x, vertex_unnamed_216, vertex_unnamed_386)) + vertex_uniform_buffer_2[vertex_unnamed_414].x;
precise float vertex_unnamed_423 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].y, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].y, vertex_unnamed_216, vertex_unnamed_387)) + vertex_uniform_buffer_2[vertex_unnamed_414].y;
precise float vertex_unnamed_424 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].z, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].z, vertex_unnamed_216, vertex_unnamed_388)) + vertex_uniform_buffer_2[vertex_unnamed_414].z;
precise float vertex_unnamed_425 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].w, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].w, vertex_unnamed_216, vertex_unnamed_389)) + vertex_uniform_buffer_2[vertex_unnamed_414].w;
gl_Position.x = vertex_unnamed_422;
gl_Position.y = vertex_unnamed_423;
gl_Position.z = vertex_unnamed_424;
gl_Position.w = vertex_unnamed_425;
vertex_output_8 = uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB);
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[100] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_3[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
vertex_uniform_buffer_3[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
vertex_uniform_buffer_3[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
vertex_uniform_buffer_3[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
vertex_uniform_buffer_3[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
stage_output.vertex_output_8 = vertex_output_8;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 vertex_uniform_buffer_0[132];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[25];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[131u].x, vertex_uniform_buffer_0[131u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[131u].y, vertex_uniform_buffer_0[131u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_97 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_112 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_127 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_135 = rsqrt(max(dot(float3(vertex_unnamed_97, vertex_unnamed_112, vertex_unnamed_127), float3(vertex_unnamed_97, vertex_unnamed_112, vertex_unnamed_127)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_136 = vertex_unnamed_135 * vertex_unnamed_97;
precise float vertex_unnamed_137 = vertex_unnamed_135 * vertex_unnamed_112;
precise float vertex_unnamed_138 = vertex_unnamed_135 * vertex_unnamed_127;
float vertex_unnamed_148 = clamp(dot(float3(vertex_unnamed_136, vertex_unnamed_137, vertex_unnamed_138), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_136;
vertex_output_5.y = vertex_unnamed_137;
vertex_output_5.z = vertex_unnamed_138;
precise float vertex_unnamed_161 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_162 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_163 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_164 = vertex_unnamed_148 * vertex_unnamed_161;
precise float vertex_unnamed_165 = vertex_unnamed_148 * vertex_unnamed_162;
precise float vertex_unnamed_166 = vertex_unnamed_148 * vertex_unnamed_163;
vertex_output_3.x = vertex_unnamed_164;
vertex_output_3.y = vertex_unnamed_165;
vertex_output_3.z = vertex_unnamed_166;
vertex_output_3.w = 0.0f;
precise float vertex_unnamed_178 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_179 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_180 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_206 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_178)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_207 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_179)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_208 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_180)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_213 = (-0.0f) - vertex_uniform_buffer_2[20u].x;
precise float vertex_unnamed_216 = (-0.0f) - vertex_uniform_buffer_2[20u].y;
precise float vertex_unnamed_218 = (-0.0f) - vertex_uniform_buffer_2[20u].z;
precise float vertex_unnamed_219 = vertex_unnamed_206 + vertex_unnamed_213;
precise float vertex_unnamed_220 = vertex_unnamed_207 + vertex_unnamed_216;
precise float vertex_unnamed_221 = vertex_unnamed_208 + vertex_unnamed_218;
precise float vertex_unnamed_229 = (-0.0f) - vertex_uniform_buffer_2[21u].x;
precise float vertex_unnamed_231 = (-0.0f) - vertex_uniform_buffer_2[21u].y;
precise float vertex_unnamed_233 = (-0.0f) - vertex_uniform_buffer_2[21u].z;
precise float vertex_unnamed_234 = vertex_unnamed_206 + vertex_unnamed_229;
precise float vertex_unnamed_235 = vertex_unnamed_207 + vertex_unnamed_231;
precise float vertex_unnamed_236 = vertex_unnamed_208 + vertex_unnamed_233;
precise float vertex_unnamed_244 = (-0.0f) - vertex_uniform_buffer_2[22u].x;
precise float vertex_unnamed_246 = (-0.0f) - vertex_uniform_buffer_2[22u].y;
precise float vertex_unnamed_248 = (-0.0f) - vertex_uniform_buffer_2[22u].z;
precise float vertex_unnamed_249 = vertex_unnamed_206 + vertex_unnamed_244;
precise float vertex_unnamed_250 = vertex_unnamed_207 + vertex_unnamed_246;
precise float vertex_unnamed_251 = vertex_unnamed_208 + vertex_unnamed_248;
precise float vertex_unnamed_259 = (-0.0f) - vertex_uniform_buffer_2[23u].x;
precise float vertex_unnamed_261 = (-0.0f) - vertex_uniform_buffer_2[23u].y;
precise float vertex_unnamed_263 = (-0.0f) - vertex_uniform_buffer_2[23u].z;
precise float vertex_unnamed_264 = vertex_unnamed_206 + vertex_unnamed_259;
precise float vertex_unnamed_265 = vertex_unnamed_207 + vertex_unnamed_261;
precise float vertex_unnamed_266 = vertex_unnamed_208 + vertex_unnamed_263;
bool vertex_unnamed_278 = dot(float3(vertex_unnamed_219, vertex_unnamed_220, vertex_unnamed_221), float3(vertex_unnamed_219, vertex_unnamed_220, vertex_unnamed_221)) < vertex_uniform_buffer_2[24u].x;
bool vertex_unnamed_279 = dot(float3(vertex_unnamed_234, vertex_unnamed_235, vertex_unnamed_236), float3(vertex_unnamed_234, vertex_unnamed_235, vertex_unnamed_236)) < vertex_uniform_buffer_2[24u].y;
bool vertex_unnamed_280 = dot(float3(vertex_unnamed_249, vertex_unnamed_250, vertex_unnamed_251), float3(vertex_unnamed_249, vertex_unnamed_250, vertex_unnamed_251)) < vertex_uniform_buffer_2[24u].z;
precise float vertex_unnamed_304 = asfloat(vertex_unnamed_278 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_279 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_305 = asfloat(vertex_unnamed_279 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_280 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_306 = asfloat(vertex_unnamed_280 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(vertex_unnamed_264, vertex_unnamed_265, vertex_unnamed_266), float3(vertex_unnamed_264, vertex_unnamed_265, vertex_unnamed_266)) < vertex_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_316 = (-0.0f) - dot(float4(asfloat((vertex_unnamed_278 ? 4294967295u : 0u) & 1065353216u), max(vertex_unnamed_304, 0.0f), max(vertex_unnamed_305, 0.0f), max(vertex_unnamed_306, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float vertex_unnamed_317 = vertex_unnamed_316 + 4.0f;
uint vertex_unnamed_319 = uint(vertex_unnamed_317) << 2u;
uint vertex_unnamed_320 = vertex_unnamed_319 + 1u;
precise float vertex_unnamed_326 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].x;
precise float vertex_unnamed_327 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].y;
precise float vertex_unnamed_328 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].z;
uint vertex_unnamed_337 = vertex_unnamed_319 + 2u;
uint vertex_unnamed_346 = vertex_unnamed_319 + 3u;
precise float vertex_unnamed_352 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].x, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].x, vertex_unnamed_206, vertex_unnamed_326)) + vertex_uniform_buffer_2[vertex_unnamed_346].x;
precise float vertex_unnamed_353 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].y, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].y, vertex_unnamed_206, vertex_unnamed_327)) + vertex_uniform_buffer_2[vertex_unnamed_346].y;
precise float vertex_unnamed_354 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].z, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].z, vertex_unnamed_206, vertex_unnamed_328)) + vertex_uniform_buffer_2[vertex_unnamed_346].z;
vertex_output_4.x = vertex_unnamed_352;
vertex_output_4.y = vertex_unnamed_353;
vertex_output_4.z = vertex_unnamed_354;
vertex_output_4.w = 0.0f;
vertex_output_6.x = vertex_unnamed_206;
vertex_output_6.y = vertex_unnamed_207;
vertex_output_6.z = vertex_unnamed_208;
precise float vertex_unnamed_369 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_370 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_371 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_372 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_402 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_206, vertex_unnamed_369)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_403 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_206, vertex_unnamed_370)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_404 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_206, vertex_unnamed_371)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_405 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_206, vertex_unnamed_372)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_402;
gl_Position.y = vertex_unnamed_403;
gl_Position.z = vertex_unnamed_404;
gl_Position.w = vertex_unnamed_405;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[131] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
vertex_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
vertex_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
vertex_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
vertex_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4x4 unity_StereoMatrixVP[2];
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 vertex_uniform_buffer_0[101];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[40];
static float4 vertex_uniform_buffer_3[25];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
static uint vertex_output_8;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
uint vertex_output_8 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[100u].x, vertex_uniform_buffer_0[100u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[100u].y, vertex_uniform_buffer_0[100u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_107 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_122 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_137 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_145 = rsqrt(max(dot(float3(vertex_unnamed_107, vertex_unnamed_122, vertex_unnamed_137), float3(vertex_unnamed_107, vertex_unnamed_122, vertex_unnamed_137)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_146 = vertex_unnamed_145 * vertex_unnamed_107;
precise float vertex_unnamed_147 = vertex_unnamed_145 * vertex_unnamed_122;
precise float vertex_unnamed_148 = vertex_unnamed_145 * vertex_unnamed_137;
float vertex_unnamed_158 = clamp(dot(float3(vertex_unnamed_146, vertex_unnamed_147, vertex_unnamed_148), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_146;
vertex_output_5.y = vertex_unnamed_147;
vertex_output_5.z = vertex_unnamed_148;
precise float vertex_unnamed_171 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_172 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_173 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_174 = vertex_unnamed_158 * vertex_unnamed_171;
precise float vertex_unnamed_175 = vertex_unnamed_158 * vertex_unnamed_172;
precise float vertex_unnamed_176 = vertex_unnamed_158 * vertex_unnamed_173;
vertex_output_3.x = vertex_unnamed_174;
vertex_output_3.y = vertex_unnamed_175;
vertex_output_3.z = vertex_unnamed_176;
vertex_output_3.w = 0.0f;
precise float vertex_unnamed_188 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_189 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_190 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_216 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_188)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_217 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_189)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_218 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_190)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_223 = (-0.0f) - vertex_uniform_buffer_3[20u].x;
precise float vertex_unnamed_226 = (-0.0f) - vertex_uniform_buffer_3[20u].y;
precise float vertex_unnamed_228 = (-0.0f) - vertex_uniform_buffer_3[20u].z;
precise float vertex_unnamed_229 = vertex_unnamed_216 + vertex_unnamed_223;
precise float vertex_unnamed_230 = vertex_unnamed_217 + vertex_unnamed_226;
precise float vertex_unnamed_231 = vertex_unnamed_218 + vertex_unnamed_228;
precise float vertex_unnamed_239 = (-0.0f) - vertex_uniform_buffer_3[21u].x;
precise float vertex_unnamed_241 = (-0.0f) - vertex_uniform_buffer_3[21u].y;
precise float vertex_unnamed_243 = (-0.0f) - vertex_uniform_buffer_3[21u].z;
precise float vertex_unnamed_244 = vertex_unnamed_216 + vertex_unnamed_239;
precise float vertex_unnamed_245 = vertex_unnamed_217 + vertex_unnamed_241;
precise float vertex_unnamed_246 = vertex_unnamed_218 + vertex_unnamed_243;
precise float vertex_unnamed_254 = (-0.0f) - vertex_uniform_buffer_3[22u].x;
precise float vertex_unnamed_256 = (-0.0f) - vertex_uniform_buffer_3[22u].y;
precise float vertex_unnamed_258 = (-0.0f) - vertex_uniform_buffer_3[22u].z;
precise float vertex_unnamed_259 = vertex_unnamed_216 + vertex_unnamed_254;
precise float vertex_unnamed_260 = vertex_unnamed_217 + vertex_unnamed_256;
precise float vertex_unnamed_261 = vertex_unnamed_218 + vertex_unnamed_258;
precise float vertex_unnamed_269 = (-0.0f) - vertex_uniform_buffer_3[23u].x;
precise float vertex_unnamed_271 = (-0.0f) - vertex_uniform_buffer_3[23u].y;
precise float vertex_unnamed_273 = (-0.0f) - vertex_uniform_buffer_3[23u].z;
precise float vertex_unnamed_274 = vertex_unnamed_216 + vertex_unnamed_269;
precise float vertex_unnamed_275 = vertex_unnamed_217 + vertex_unnamed_271;
precise float vertex_unnamed_276 = vertex_unnamed_218 + vertex_unnamed_273;
bool vertex_unnamed_288 = dot(float3(vertex_unnamed_229, vertex_unnamed_230, vertex_unnamed_231), float3(vertex_unnamed_229, vertex_unnamed_230, vertex_unnamed_231)) < vertex_uniform_buffer_3[24u].x;
bool vertex_unnamed_289 = dot(float3(vertex_unnamed_244, vertex_unnamed_245, vertex_unnamed_246), float3(vertex_unnamed_244, vertex_unnamed_245, vertex_unnamed_246)) < vertex_uniform_buffer_3[24u].y;
bool vertex_unnamed_290 = dot(float3(vertex_unnamed_259, vertex_unnamed_260, vertex_unnamed_261), float3(vertex_unnamed_259, vertex_unnamed_260, vertex_unnamed_261)) < vertex_uniform_buffer_3[24u].z;
precise float vertex_unnamed_314 = asfloat(vertex_unnamed_288 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_289 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_315 = asfloat(vertex_unnamed_289 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_290 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_316 = asfloat(vertex_unnamed_290 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(vertex_unnamed_274, vertex_unnamed_275, vertex_unnamed_276), float3(vertex_unnamed_274, vertex_unnamed_275, vertex_unnamed_276)) < vertex_uniform_buffer_3[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_326 = (-0.0f) - dot(float4(asfloat((vertex_unnamed_288 ? 4294967295u : 0u) & 1065353216u), max(vertex_unnamed_314, 0.0f), max(vertex_unnamed_315, 0.0f), max(vertex_unnamed_316, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float vertex_unnamed_327 = vertex_unnamed_326 + 4.0f;
uint vertex_unnamed_329 = uint(vertex_unnamed_327) << 2u;
uint vertex_unnamed_330 = vertex_unnamed_329 + 1u;
precise float vertex_unnamed_336 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].x;
precise float vertex_unnamed_337 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].y;
precise float vertex_unnamed_338 = vertex_unnamed_217 * vertex_uniform_buffer_3[vertex_unnamed_330].z;
uint vertex_unnamed_347 = vertex_unnamed_329 + 2u;
uint vertex_unnamed_356 = vertex_unnamed_329 + 3u;
precise float vertex_unnamed_362 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].x, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].x, vertex_unnamed_216, vertex_unnamed_336)) + vertex_uniform_buffer_3[vertex_unnamed_356].x;
precise float vertex_unnamed_363 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].y, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].y, vertex_unnamed_216, vertex_unnamed_337)) + vertex_uniform_buffer_3[vertex_unnamed_356].y;
precise float vertex_unnamed_364 = mad(vertex_uniform_buffer_3[vertex_unnamed_347].z, vertex_unnamed_218, mad(vertex_uniform_buffer_3[vertex_unnamed_329].z, vertex_unnamed_216, vertex_unnamed_338)) + vertex_uniform_buffer_3[vertex_unnamed_356].z;
vertex_output_4.x = vertex_unnamed_362;
vertex_output_4.y = vertex_unnamed_363;
vertex_output_4.z = vertex_unnamed_364;
vertex_output_4.w = 0.0f;
vertex_output_6.x = vertex_unnamed_216;
vertex_output_6.y = vertex_unnamed_217;
vertex_output_6.z = vertex_unnamed_218;
uint vertex_unnamed_376 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_377 = vertex_unnamed_376 << 2u;
gl_Layer = int(vertex_unnamed_376);
uint vertex_unnamed_378 = vertex_unnamed_377 + 33u;
precise float vertex_unnamed_386 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].x;
precise float vertex_unnamed_387 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].y;
precise float vertex_unnamed_388 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].z;
precise float vertex_unnamed_389 = vertex_unnamed_217 * vertex_uniform_buffer_2[vertex_unnamed_378].w;
uint vertex_unnamed_390 = vertex_unnamed_377 + 32u;
uint vertex_unnamed_402 = vertex_unnamed_377 + 34u;
uint vertex_unnamed_414 = vertex_unnamed_377 + 35u;
precise float vertex_unnamed_422 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].x, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].x, vertex_unnamed_216, vertex_unnamed_386)) + vertex_uniform_buffer_2[vertex_unnamed_414].x;
precise float vertex_unnamed_423 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].y, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].y, vertex_unnamed_216, vertex_unnamed_387)) + vertex_uniform_buffer_2[vertex_unnamed_414].y;
precise float vertex_unnamed_424 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].z, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].z, vertex_unnamed_216, vertex_unnamed_388)) + vertex_uniform_buffer_2[vertex_unnamed_414].z;
precise float vertex_unnamed_425 = mad(vertex_uniform_buffer_2[vertex_unnamed_402].w, vertex_unnamed_218, mad(vertex_uniform_buffer_2[vertex_unnamed_390].w, vertex_unnamed_216, vertex_unnamed_389)) + vertex_uniform_buffer_2[vertex_unnamed_414].w;
gl_Position.x = vertex_unnamed_422;
gl_Position.y = vertex_unnamed_423;
gl_Position.z = vertex_unnamed_424;
gl_Position.w = vertex_unnamed_425;
vertex_output_8 = uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB);
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[100] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_2[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_2[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_2[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_2[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_2[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_2[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_2[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_3[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
vertex_uniform_buffer_3[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
vertex_uniform_buffer_3[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
vertex_uniform_buffer_3[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
vertex_uniform_buffer_3[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
stage_output.vertex_output_8 = vertex_output_8;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightData;
float4 _CascadeShadowSplitSpheres0;
float4 _CascadeShadowSplitSpheres1;
float4 _CascadeShadowSplitSpheres2;
float4 _CascadeShadowSplitSpheres3;
float4 _CascadeShadowSplitSphereRadii;
static float4 vertex_uniform_buffer_0[132];
static float4 vertex_uniform_buffer_1[12];
static float4 vertex_uniform_buffer_2[25];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
static float2 vertex_input_2;
static float3 vertex_input_3;
static float4 vertex_input_4;
static float2 vertex_output_0;
static float3 vertex_output_1;
static float4 vertex_output_2;
static float4 vertex_output_3;
static float4 vertex_output_4;
static float3 vertex_output_5;
static float3 vertex_output_6;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : NORMAL; // TEXCOORD
float2 vertex_input_2 : COLOR; // TEXCOORD_1
float3 vertex_input_3 : TEXCOORD0; // NORMAL
float4 vertex_input_4 : COLOR; // COLOR
};
struct Vertex_Stage_Output
{
float2 vertex_output_0 : TEXCOORD; // TEXCOORD
float3 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float4 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 vertex_output_4 : TEXCOORD4; // TEXCOORD_4
float3 vertex_output_5 : TEXCOORD5; // TEXCOORD_5
float3 vertex_output_6 : TEXCOORD6; // TEXCOORD_6
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.x = mad(vertex_input_1.x, vertex_uniform_buffer_0[131u].x, vertex_uniform_buffer_0[131u].z);
vertex_output_0.y = mad(vertex_input_1.y, vertex_uniform_buffer_0[131u].y, vertex_uniform_buffer_0[131u].w);
vertex_output_1.x = 0.0f;
vertex_output_1.y = 0.0f;
vertex_output_1.z = 0.0f;
vertex_output_2.x = vertex_input_4.x;
vertex_output_2.y = vertex_input_4.y;
vertex_output_2.z = vertex_input_4.z;
vertex_output_2.w = vertex_input_4.w;
float vertex_unnamed_97 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_112 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_127 = dot(float3(vertex_input_3.x, vertex_input_3.y, vertex_input_3.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_135 = rsqrt(max(dot(float3(vertex_unnamed_97, vertex_unnamed_112, vertex_unnamed_127), float3(vertex_unnamed_97, vertex_unnamed_112, vertex_unnamed_127)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_136 = vertex_unnamed_135 * vertex_unnamed_97;
precise float vertex_unnamed_137 = vertex_unnamed_135 * vertex_unnamed_112;
precise float vertex_unnamed_138 = vertex_unnamed_135 * vertex_unnamed_127;
float vertex_unnamed_148 = clamp(dot(float3(vertex_unnamed_136, vertex_unnamed_137, vertex_unnamed_138), float3(vertex_uniform_buffer_0[5u].xyz)), 0.0f, 1.0f);
vertex_output_5.x = vertex_unnamed_136;
vertex_output_5.y = vertex_unnamed_137;
vertex_output_5.z = vertex_unnamed_138;
precise float vertex_unnamed_161 = vertex_uniform_buffer_0[6u].x * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_162 = vertex_uniform_buffer_0[6u].y * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_163 = vertex_uniform_buffer_0[6u].z * vertex_uniform_buffer_1[11u].z;
precise float vertex_unnamed_164 = vertex_unnamed_148 * vertex_unnamed_161;
precise float vertex_unnamed_165 = vertex_unnamed_148 * vertex_unnamed_162;
precise float vertex_unnamed_166 = vertex_unnamed_148 * vertex_unnamed_163;
vertex_output_3.x = vertex_unnamed_164;
vertex_output_3.y = vertex_unnamed_165;
vertex_output_3.z = vertex_unnamed_166;
vertex_output_3.w = 0.0f;
precise float vertex_unnamed_178 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_179 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_180 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_206 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_178)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_207 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_179)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_208 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_180)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_213 = (-0.0f) - vertex_uniform_buffer_2[20u].x;
precise float vertex_unnamed_216 = (-0.0f) - vertex_uniform_buffer_2[20u].y;
precise float vertex_unnamed_218 = (-0.0f) - vertex_uniform_buffer_2[20u].z;
precise float vertex_unnamed_219 = vertex_unnamed_206 + vertex_unnamed_213;
precise float vertex_unnamed_220 = vertex_unnamed_207 + vertex_unnamed_216;
precise float vertex_unnamed_221 = vertex_unnamed_208 + vertex_unnamed_218;
precise float vertex_unnamed_229 = (-0.0f) - vertex_uniform_buffer_2[21u].x;
precise float vertex_unnamed_231 = (-0.0f) - vertex_uniform_buffer_2[21u].y;
precise float vertex_unnamed_233 = (-0.0f) - vertex_uniform_buffer_2[21u].z;
precise float vertex_unnamed_234 = vertex_unnamed_206 + vertex_unnamed_229;
precise float vertex_unnamed_235 = vertex_unnamed_207 + vertex_unnamed_231;
precise float vertex_unnamed_236 = vertex_unnamed_208 + vertex_unnamed_233;
precise float vertex_unnamed_244 = (-0.0f) - vertex_uniform_buffer_2[22u].x;
precise float vertex_unnamed_246 = (-0.0f) - vertex_uniform_buffer_2[22u].y;
precise float vertex_unnamed_248 = (-0.0f) - vertex_uniform_buffer_2[22u].z;
precise float vertex_unnamed_249 = vertex_unnamed_206 + vertex_unnamed_244;
precise float vertex_unnamed_250 = vertex_unnamed_207 + vertex_unnamed_246;
precise float vertex_unnamed_251 = vertex_unnamed_208 + vertex_unnamed_248;
precise float vertex_unnamed_259 = (-0.0f) - vertex_uniform_buffer_2[23u].x;
precise float vertex_unnamed_261 = (-0.0f) - vertex_uniform_buffer_2[23u].y;
precise float vertex_unnamed_263 = (-0.0f) - vertex_uniform_buffer_2[23u].z;
precise float vertex_unnamed_264 = vertex_unnamed_206 + vertex_unnamed_259;
precise float vertex_unnamed_265 = vertex_unnamed_207 + vertex_unnamed_261;
precise float vertex_unnamed_266 = vertex_unnamed_208 + vertex_unnamed_263;
bool vertex_unnamed_278 = dot(float3(vertex_unnamed_219, vertex_unnamed_220, vertex_unnamed_221), float3(vertex_unnamed_219, vertex_unnamed_220, vertex_unnamed_221)) < vertex_uniform_buffer_2[24u].x;
bool vertex_unnamed_279 = dot(float3(vertex_unnamed_234, vertex_unnamed_235, vertex_unnamed_236), float3(vertex_unnamed_234, vertex_unnamed_235, vertex_unnamed_236)) < vertex_uniform_buffer_2[24u].y;
bool vertex_unnamed_280 = dot(float3(vertex_unnamed_249, vertex_unnamed_250, vertex_unnamed_251), float3(vertex_unnamed_249, vertex_unnamed_250, vertex_unnamed_251)) < vertex_uniform_buffer_2[24u].z;
precise float vertex_unnamed_304 = asfloat(vertex_unnamed_278 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_279 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_305 = asfloat(vertex_unnamed_279 ? 3212836864u : 2147483648u) + asfloat((vertex_unnamed_280 ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_306 = asfloat(vertex_unnamed_280 ? 3212836864u : 2147483648u) + asfloat(((dot(float3(vertex_unnamed_264, vertex_unnamed_265, vertex_unnamed_266), float3(vertex_unnamed_264, vertex_unnamed_265, vertex_unnamed_266)) < vertex_uniform_buffer_2[24u].w) ? 4294967295u : 0u) & 1065353216u);
precise float vertex_unnamed_316 = (-0.0f) - dot(float4(asfloat((vertex_unnamed_278 ? 4294967295u : 0u) & 1065353216u), max(vertex_unnamed_304, 0.0f), max(vertex_unnamed_305, 0.0f), max(vertex_unnamed_306, 0.0f)), float4(4.0f, 3.0f, 2.0f, 1.0f));
precise float vertex_unnamed_317 = vertex_unnamed_316 + 4.0f;
uint vertex_unnamed_319 = uint(vertex_unnamed_317) << 2u;
uint vertex_unnamed_320 = vertex_unnamed_319 + 1u;
precise float vertex_unnamed_326 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].x;
precise float vertex_unnamed_327 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].y;
precise float vertex_unnamed_328 = vertex_unnamed_207 * vertex_uniform_buffer_2[vertex_unnamed_320].z;
uint vertex_unnamed_337 = vertex_unnamed_319 + 2u;
uint vertex_unnamed_346 = vertex_unnamed_319 + 3u;
precise float vertex_unnamed_352 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].x, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].x, vertex_unnamed_206, vertex_unnamed_326)) + vertex_uniform_buffer_2[vertex_unnamed_346].x;
precise float vertex_unnamed_353 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].y, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].y, vertex_unnamed_206, vertex_unnamed_327)) + vertex_uniform_buffer_2[vertex_unnamed_346].y;
precise float vertex_unnamed_354 = mad(vertex_uniform_buffer_2[vertex_unnamed_337].z, vertex_unnamed_208, mad(vertex_uniform_buffer_2[vertex_unnamed_319].z, vertex_unnamed_206, vertex_unnamed_328)) + vertex_uniform_buffer_2[vertex_unnamed_346].z;
vertex_output_4.x = vertex_unnamed_352;
vertex_output_4.y = vertex_unnamed_353;
vertex_output_4.z = vertex_unnamed_354;
vertex_output_4.w = 0.0f;
vertex_output_6.x = vertex_unnamed_206;
vertex_output_6.y = vertex_unnamed_207;
vertex_output_6.z = vertex_unnamed_208;
precise float vertex_unnamed_369 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_370 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_371 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_372 = vertex_unnamed_207 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_402 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_206, vertex_unnamed_369)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_403 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_206, vertex_unnamed_370)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_404 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_206, vertex_unnamed_371)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_405 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_208, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_206, vertex_unnamed_372)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_402;
gl_Position.y = vertex_unnamed_403;
gl_Position.z = vertex_unnamed_404;
gl_Position.w = vertex_unnamed_405;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_0[131] = float4(_MainTex_ST[0], _MainTex_ST[1], _MainTex_ST[2], _MainTex_ST[3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[11] = float4(unity_LightData[0], unity_LightData[1], unity_LightData[2], unity_LightData[3]);
vertex_uniform_buffer_2[20] = float4(_CascadeShadowSplitSpheres0[0], _CascadeShadowSplitSpheres0[1], _CascadeShadowSplitSpheres0[2], _CascadeShadowSplitSpheres0[3]);
vertex_uniform_buffer_2[21] = float4(_CascadeShadowSplitSpheres1[0], _CascadeShadowSplitSpheres1[1], _CascadeShadowSplitSpheres1[2], _CascadeShadowSplitSpheres1[3]);
vertex_uniform_buffer_2[22] = float4(_CascadeShadowSplitSpheres2[0], _CascadeShadowSplitSpheres2[1], _CascadeShadowSplitSpheres2[2], _CascadeShadowSplitSpheres2[3]);
vertex_uniform_buffer_2[23] = float4(_CascadeShadowSplitSpheres3[0], _CascadeShadowSplitSpheres3[1], _CascadeShadowSplitSpheres3[2], _CascadeShadowSplitSpheres3[3]);
vertex_uniform_buffer_2[24] = float4(_CascadeShadowSplitSphereRadii[0], _CascadeShadowSplitSphereRadii[1], _CascadeShadowSplitSphereRadii[2], _CascadeShadowSplitSphereRadii[3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vertex_input_3 = stage_input.vertex_input_3;
vertex_input_4 = stage_input.vertex_input_4;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
stage_output.vertex_output_4 = vertex_output_4;
stage_output.vertex_output_5 = vertex_output_5;
stage_output.vertex_output_6 = vertex_output_6;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_83 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_88 = (-0.0f) - fragment_unnamed_83;
float fragment_unnamed_91 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_88);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_154 = asfloat(1065353216u);
precise float fragment_unnamed_185 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_186 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_187 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_204 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_205 = fragment_unnamed_204 + 1.0f;
float fragment_unnamed_224 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_205)));
float4 fragment_unnamed_244 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_255 = fragment_unnamed_244.x * fragment_input_2.x;
precise float fragment_unnamed_256 = fragment_unnamed_244.y * fragment_input_2.y;
precise float fragment_unnamed_257 = fragment_unnamed_244.z * fragment_input_2.z;
precise float fragment_unnamed_258 = mad(fragment_input_3.x, fragment_unnamed_224, fragment_unnamed_185) * fragment_unnamed_255;
precise float fragment_unnamed_259 = mad(fragment_input_3.y, fragment_unnamed_224, fragment_unnamed_186) * fragment_unnamed_256;
precise float fragment_unnamed_260 = mad(fragment_input_3.z, fragment_unnamed_224, fragment_unnamed_187) * fragment_unnamed_257;
fragment_output_3.x = fragment_unnamed_258;
fragment_output_3.y = fragment_unnamed_259;
fragment_output_3.z = fragment_unnamed_260;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_86 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_91 = (-0.0f) - fragment_unnamed_86;
float fragment_unnamed_94 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_91);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_157 = asfloat(1065353216u);
precise float fragment_unnamed_188 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_189 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_190 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_207 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_208 = fragment_unnamed_207 + 1.0f;
float fragment_unnamed_227 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_208)));
float4 fragment_unnamed_247 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_258 = fragment_unnamed_247.x * fragment_input_2.x;
precise float fragment_unnamed_259 = fragment_unnamed_247.y * fragment_input_2.y;
precise float fragment_unnamed_260 = fragment_unnamed_247.z * fragment_input_2.z;
precise float fragment_unnamed_261 = mad(fragment_input_3.x, fragment_unnamed_227, fragment_unnamed_188) * fragment_unnamed_258;
precise float fragment_unnamed_262 = mad(fragment_input_3.y, fragment_unnamed_227, fragment_unnamed_189) * fragment_unnamed_259;
precise float fragment_unnamed_263 = mad(fragment_input_3.z, fragment_unnamed_227, fragment_unnamed_190) * fragment_unnamed_260;
fragment_output_3.x = fragment_unnamed_261;
fragment_output_3.y = fragment_unnamed_262;
fragment_output_3.z = fragment_unnamed_263;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_83 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_88 = (-0.0f) - fragment_unnamed_83;
float fragment_unnamed_91 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_88);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_154 = asfloat(1065353216u);
precise float fragment_unnamed_185 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_186 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_187 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_204 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_205 = fragment_unnamed_204 + 1.0f;
float fragment_unnamed_224 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_205)));
float4 fragment_unnamed_244 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_255 = fragment_unnamed_244.x * fragment_input_2.x;
precise float fragment_unnamed_256 = fragment_unnamed_244.y * fragment_input_2.y;
precise float fragment_unnamed_257 = fragment_unnamed_244.z * fragment_input_2.z;
precise float fragment_unnamed_258 = mad(fragment_input_3.x, fragment_unnamed_224, fragment_unnamed_185) * fragment_unnamed_255;
precise float fragment_unnamed_259 = mad(fragment_input_3.y, fragment_unnamed_224, fragment_unnamed_186) * fragment_unnamed_256;
precise float fragment_unnamed_260 = mad(fragment_input_3.z, fragment_unnamed_224, fragment_unnamed_187) * fragment_unnamed_257;
fragment_output_3.x = fragment_unnamed_258;
fragment_output_3.y = fragment_unnamed_259;
fragment_output_3.z = fragment_unnamed_260;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_86 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_91 = (-0.0f) - fragment_unnamed_86;
float fragment_unnamed_94 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_91);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_157 = asfloat(1065353216u);
precise float fragment_unnamed_188 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_189 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_190 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_207 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_208 = fragment_unnamed_207 + 1.0f;
float fragment_unnamed_227 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_208)));
float4 fragment_unnamed_247 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_258 = fragment_unnamed_247.x * fragment_input_2.x;
precise float fragment_unnamed_259 = fragment_unnamed_247.y * fragment_input_2.y;
precise float fragment_unnamed_260 = fragment_unnamed_247.z * fragment_input_2.z;
precise float fragment_unnamed_261 = mad(fragment_input_3.x, fragment_unnamed_227, fragment_unnamed_188) * fragment_unnamed_258;
precise float fragment_unnamed_262 = mad(fragment_input_3.y, fragment_unnamed_227, fragment_unnamed_189) * fragment_unnamed_259;
precise float fragment_unnamed_263 = mad(fragment_input_3.z, fragment_unnamed_227, fragment_unnamed_190) * fragment_unnamed_260;
fragment_output_3.x = fragment_unnamed_261;
fragment_output_3.y = fragment_unnamed_262;
fragment_output_3.z = fragment_unnamed_263;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_66 = asfloat(1065353216u);
precise float fragment_unnamed_110 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_111 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_112 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_113 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_148 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_153 = (-0.0f) - fragment_unnamed_148;
float fragment_unnamed_156 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_153);
precise float fragment_unnamed_166 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_167 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_168 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
float fragment_unnamed_257;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_258;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_204 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_205 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_206 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_207 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_232 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_233 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_234 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_235 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_258 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_204, fragment_unnamed_205), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_206, fragment_unnamed_207), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_232, fragment_unnamed_233), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_342;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_354 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_355 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_354;
precise float fragment_unnamed_365 = (-0.0f) - fragment_unnamed_355;
float fragment_unnamed_366 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_364);
float fragment_unnamed_367 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_365);
precise float fragment_unnamed_368 = fragment_unnamed_366 + 0.5f;
precise float fragment_unnamed_369 = fragment_unnamed_366 + 1.0f;
precise float fragment_unnamed_370 = fragment_unnamed_367 + 0.5f;
precise float fragment_unnamed_371 = fragment_unnamed_367 + 1.0f;
precise float fragment_unnamed_372 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_373 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_374 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_375 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_376 = fragment_unnamed_373 * 0.07999999821186065673828125f;
precise float fragment_unnamed_378 = fragment_unnamed_375 * 0.07999999821186065673828125f;
precise float fragment_unnamed_379 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_383 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_384 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_385 = fragment_unnamed_383 + 1.0f;
precise float fragment_unnamed_386 = fragment_unnamed_384 + 1.0f;
float fragment_unnamed_387 = min(fragment_unnamed_366, 0.0f);
float fragment_unnamed_388 = min(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_389 = (-0.0f) - fragment_unnamed_387;
precise float fragment_unnamed_390 = (-0.0f) - fragment_unnamed_388;
float fragment_unnamed_393 = max(fragment_unnamed_366, 0.0f);
float fragment_unnamed_394 = max(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_395 = (-0.0f) - fragment_unnamed_393;
precise float fragment_unnamed_396 = (-0.0f) - fragment_unnamed_394;
precise float fragment_unnamed_399 = mad(fragment_unnamed_389, fragment_unnamed_387, fragment_unnamed_385) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_390, fragment_unnamed_388, fragment_unnamed_386) + 1.0f;
precise float fragment_unnamed_401 = mad(fragment_unnamed_395, fragment_unnamed_393, fragment_unnamed_369) + 1.0f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_396, fragment_unnamed_394, fragment_unnamed_371) + 1.0f;
precise float fragment_unnamed_403 = mad(fragment_unnamed_372, 0.5f, fragment_unnamed_379) * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = mad(fragment_unnamed_374, 0.5f, fragment_unnamed_380) * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_385 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_386 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_400 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_401 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_402 * 0.1599999964237213134765625f;
precise float fragment_unnamed_412 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_413 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_414 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_415 = fragment_unnamed_376 + fragment_unnamed_412;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_403;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_418 = fragment_unnamed_405 + fragment_unnamed_407;
precise float fragment_unnamed_419 = fragment_unnamed_409 + fragment_unnamed_411;
precise float fragment_unnamed_420 = fragment_unnamed_413 + fragment_unnamed_378;
precise float fragment_unnamed_421 = fragment_unnamed_406 / fragment_unnamed_416;
precise float fragment_unnamed_422 = fragment_unnamed_410 / fragment_unnamed_417;
precise float fragment_unnamed_423 = fragment_unnamed_376 / fragment_unnamed_415;
precise float fragment_unnamed_424 = fragment_unnamed_421 + (-2.5f);
precise float fragment_unnamed_426 = fragment_unnamed_422 + (-0.5f);
precise float fragment_unnamed_428 = fragment_unnamed_423 + 1.5f;
precise float fragment_unnamed_430 = fragment_unnamed_407 / fragment_unnamed_418;
precise float fragment_unnamed_431 = fragment_unnamed_411 / fragment_unnamed_419;
precise float fragment_unnamed_432 = fragment_unnamed_378 / fragment_unnamed_420;
precise float fragment_unnamed_433 = fragment_unnamed_430 + (-2.5f);
precise float fragment_unnamed_434 = fragment_unnamed_431 + (-0.5f);
precise float fragment_unnamed_435 = fragment_unnamed_432 + 1.5f;
precise float fragment_unnamed_439 = fragment_unnamed_426 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_440 = fragment_unnamed_424 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_441 = fragment_unnamed_428 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_445 = fragment_unnamed_433 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_446 = fragment_unnamed_434 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_447 = fragment_unnamed_435 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_486 = fragment_unnamed_418 * fragment_unnamed_416;
precise float fragment_unnamed_487 = fragment_unnamed_418 * fragment_unnamed_417;
precise float fragment_unnamed_488 = fragment_unnamed_418 * fragment_unnamed_415;
precise float fragment_unnamed_489 = fragment_unnamed_419 * fragment_unnamed_416;
precise float fragment_unnamed_490 = fragment_unnamed_419 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_419 * fragment_unnamed_415;
precise float fragment_unnamed_492 = fragment_unnamed_420 * fragment_unnamed_416;
precise float fragment_unnamed_493 = fragment_unnamed_420 * fragment_unnamed_417;
precise float fragment_unnamed_494 = fragment_unnamed_420 * fragment_unnamed_415;
precise float fragment_unnamed_508 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x * fragment_unnamed_487;
float fragment_unnamed_544 = mad(fragment_unnamed_492, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, fragment_unnamed_508))))));
fragment_unnamed_342 = mad(fragment_unnamed_494, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_493, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, fragment_unnamed_544));
}
else
{
float fragment_unnamed_569 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_570 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_569;
precise float fragment_unnamed_580 = (-0.0f) - fragment_unnamed_570;
float fragment_unnamed_581 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_579);
float fragment_unnamed_582 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_580);
precise float fragment_unnamed_583 = fragment_unnamed_581 + 0.5f;
precise float fragment_unnamed_584 = fragment_unnamed_581 + 1.0f;
precise float fragment_unnamed_585 = fragment_unnamed_582 + 0.5f;
precise float fragment_unnamed_586 = fragment_unnamed_582 + 1.0f;
precise float fragment_unnamed_587 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_588 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_589 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_590 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_591 = fragment_unnamed_588 * 0.040816001594066619873046875f;
precise float fragment_unnamed_593 = fragment_unnamed_590 * 0.040816001594066619873046875f;
precise float fragment_unnamed_594 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_598 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_599 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_600 = fragment_unnamed_598 + 1.0f;
precise float fragment_unnamed_601 = fragment_unnamed_599 + 1.0f;
float fragment_unnamed_602 = min(fragment_unnamed_581, 0.0f);
float fragment_unnamed_603 = min(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_604 = (-0.0f) - fragment_unnamed_602;
precise float fragment_unnamed_605 = (-0.0f) - fragment_unnamed_603;
float fragment_unnamed_608 = max(fragment_unnamed_581, 0.0f);
float fragment_unnamed_609 = max(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_610 = (-0.0f) - fragment_unnamed_608;
precise float fragment_unnamed_611 = (-0.0f) - fragment_unnamed_609;
precise float fragment_unnamed_614 = mad(fragment_unnamed_604, fragment_unnamed_602, fragment_unnamed_600) + 2.0f;
precise float fragment_unnamed_615 = mad(fragment_unnamed_605, fragment_unnamed_603, fragment_unnamed_601) + 2.0f;
precise float fragment_unnamed_616 = mad(fragment_unnamed_610, fragment_unnamed_608, fragment_unnamed_584) + 2.0f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_611, fragment_unnamed_609, fragment_unnamed_586) + 2.0f;
precise float fragment_unnamed_618 = fragment_unnamed_616 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = mad(fragment_unnamed_589, 0.5f, fragment_unnamed_595) * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = mad(fragment_unnamed_587, 0.5f, fragment_unnamed_594) * 0.08163200318813323974609375f;
precise float fragment_unnamed_622 = fragment_unnamed_617 * 0.08163200318813323974609375f;
precise float fragment_unnamed_623 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_624 = fragment_unnamed_615 * 0.08163200318813323974609375f;
float fragment_unnamed_629 = mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_630 = mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_631 = fragment_unnamed_629 + fragment_unnamed_621;
precise float fragment_unnamed_632 = fragment_unnamed_623 + mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_633 = fragment_unnamed_630 + fragment_unnamed_618;
precise float fragment_unnamed_634 = fragment_unnamed_591 + mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_637 = mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_638 = mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_639 = fragment_unnamed_637 + fragment_unnamed_620;
precise float fragment_unnamed_640 = fragment_unnamed_624 + mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_641 = fragment_unnamed_638 + fragment_unnamed_622;
precise float fragment_unnamed_642 = fragment_unnamed_593 + mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_643 = fragment_unnamed_629 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_623 / fragment_unnamed_632;
precise float fragment_unnamed_645 = fragment_unnamed_630 / fragment_unnamed_633;
precise float fragment_unnamed_646 = fragment_unnamed_591 / fragment_unnamed_634;
precise float fragment_unnamed_647 = fragment_unnamed_643 + (-3.5f);
precise float fragment_unnamed_649 = fragment_unnamed_644 + (-1.5f);
precise float fragment_unnamed_651 = fragment_unnamed_645 + 0.5f;
precise float fragment_unnamed_652 = fragment_unnamed_646 + 2.5f;
precise float fragment_unnamed_654 = fragment_unnamed_637 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_624 / fragment_unnamed_640;
precise float fragment_unnamed_656 = fragment_unnamed_638 / fragment_unnamed_641;
precise float fragment_unnamed_657 = fragment_unnamed_593 / fragment_unnamed_642;
precise float fragment_unnamed_658 = fragment_unnamed_654 + (-3.5f);
precise float fragment_unnamed_659 = fragment_unnamed_655 + (-1.5f);
precise float fragment_unnamed_660 = fragment_unnamed_656 + 0.5f;
precise float fragment_unnamed_661 = fragment_unnamed_657 + 2.5f;
precise float fragment_unnamed_665 = fragment_unnamed_652 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_666 = fragment_unnamed_647 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_667 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_668 = fragment_unnamed_651 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_672 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_673 = fragment_unnamed_661 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_674 = fragment_unnamed_659 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_675 = fragment_unnamed_660 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_639 * fragment_unnamed_632;
precise float fragment_unnamed_754 = fragment_unnamed_639 * fragment_unnamed_633;
precise float fragment_unnamed_755 = fragment_unnamed_639 * fragment_unnamed_634;
precise float fragment_unnamed_756 = fragment_unnamed_640 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_640 * fragment_unnamed_632;
precise float fragment_unnamed_758 = fragment_unnamed_640 * fragment_unnamed_633;
precise float fragment_unnamed_759 = fragment_unnamed_640 * fragment_unnamed_634;
precise float fragment_unnamed_760 = fragment_unnamed_641 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_641 * fragment_unnamed_632;
precise float fragment_unnamed_762 = fragment_unnamed_641 * fragment_unnamed_633;
precise float fragment_unnamed_763 = fragment_unnamed_641 * fragment_unnamed_634;
precise float fragment_unnamed_764 = fragment_unnamed_642 * fragment_unnamed_631;
precise float fragment_unnamed_765 = fragment_unnamed_642 * fragment_unnamed_632;
precise float fragment_unnamed_766 = fragment_unnamed_642 * fragment_unnamed_633;
precise float fragment_unnamed_767 = fragment_unnamed_642 * fragment_unnamed_634;
precise float fragment_unnamed_781 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x * fragment_unnamed_753;
float fragment_unnamed_817 = mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, fragment_unnamed_781))))));
float fragment_unnamed_859 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, fragment_unnamed_817))))));
fragment_unnamed_342 = mad(fragment_unnamed_767, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_766, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_765, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, fragment_unnamed_859)));
}
fragment_unnamed_258 = fragment_unnamed_342;
}
fragment_unnamed_257 = fragment_unnamed_258;
}
else
{
fragment_unnamed_257 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_262 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_263 = fragment_unnamed_262 + 1.0f;
float fragment_unnamed_281 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_257, fragment_uniform_buffer_2[27u].x, fragment_unnamed_263)));
float4 fragment_unnamed_301 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_312 = fragment_unnamed_301.x * fragment_input_2.x;
precise float fragment_unnamed_313 = fragment_unnamed_301.y * fragment_input_2.y;
precise float fragment_unnamed_314 = fragment_unnamed_301.z * fragment_input_2.z;
precise float fragment_unnamed_315 = mad(fragment_input_3.x, fragment_unnamed_281, fragment_unnamed_166) * fragment_unnamed_312;
precise float fragment_unnamed_316 = mad(fragment_input_3.y, fragment_unnamed_281, fragment_unnamed_167) * fragment_unnamed_313;
precise float fragment_unnamed_317 = mad(fragment_input_3.z, fragment_unnamed_281, fragment_unnamed_168) * fragment_unnamed_314;
fragment_output_3.x = fragment_unnamed_315;
fragment_output_3.y = fragment_unnamed_316;
fragment_output_3.z = fragment_unnamed_317;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float fragment_unnamed_254;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_255;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_201 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_202 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_203 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_204 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_229 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_230 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_231 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_232 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_255 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_201, fragment_unnamed_202), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_203, fragment_unnamed_204), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_229, fragment_unnamed_230), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_339;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_351 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_352 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_351;
precise float fragment_unnamed_362 = (-0.0f) - fragment_unnamed_352;
float fragment_unnamed_363 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_361);
float fragment_unnamed_364 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_362);
precise float fragment_unnamed_365 = fragment_unnamed_363 + 0.5f;
precise float fragment_unnamed_366 = fragment_unnamed_363 + 1.0f;
precise float fragment_unnamed_367 = fragment_unnamed_364 + 0.5f;
precise float fragment_unnamed_368 = fragment_unnamed_364 + 1.0f;
precise float fragment_unnamed_369 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_370 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_371 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_372 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_373 = fragment_unnamed_370 * 0.07999999821186065673828125f;
precise float fragment_unnamed_375 = fragment_unnamed_372 * 0.07999999821186065673828125f;
precise float fragment_unnamed_376 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_377 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_381 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_382 = fragment_unnamed_380 + 1.0f;
precise float fragment_unnamed_383 = fragment_unnamed_381 + 1.0f;
float fragment_unnamed_384 = min(fragment_unnamed_363, 0.0f);
float fragment_unnamed_385 = min(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_386 = (-0.0f) - fragment_unnamed_384;
precise float fragment_unnamed_387 = (-0.0f) - fragment_unnamed_385;
float fragment_unnamed_390 = max(fragment_unnamed_363, 0.0f);
float fragment_unnamed_391 = max(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_392 = (-0.0f) - fragment_unnamed_390;
precise float fragment_unnamed_393 = (-0.0f) - fragment_unnamed_391;
precise float fragment_unnamed_396 = mad(fragment_unnamed_386, fragment_unnamed_384, fragment_unnamed_382) + 1.0f;
precise float fragment_unnamed_397 = mad(fragment_unnamed_387, fragment_unnamed_385, fragment_unnamed_383) + 1.0f;
precise float fragment_unnamed_398 = mad(fragment_unnamed_392, fragment_unnamed_390, fragment_unnamed_366) + 1.0f;
precise float fragment_unnamed_399 = mad(fragment_unnamed_393, fragment_unnamed_391, fragment_unnamed_368) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_369, 0.5f, fragment_unnamed_376) * 0.1599999964237213134765625f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_371, 0.5f, fragment_unnamed_377) * 0.1599999964237213134765625f;
precise float fragment_unnamed_403 = fragment_unnamed_382 * 0.1599999964237213134765625f;
precise float fragment_unnamed_404 = fragment_unnamed_383 * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = fragment_unnamed_396 * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_397 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_398 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_366 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_412 = fragment_unnamed_373 + fragment_unnamed_409;
precise float fragment_unnamed_413 = fragment_unnamed_403 + fragment_unnamed_400;
precise float fragment_unnamed_414 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_415 = fragment_unnamed_402 + fragment_unnamed_404;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_408;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_375;
precise float fragment_unnamed_418 = fragment_unnamed_403 / fragment_unnamed_413;
precise float fragment_unnamed_419 = fragment_unnamed_407 / fragment_unnamed_414;
precise float fragment_unnamed_420 = fragment_unnamed_373 / fragment_unnamed_412;
precise float fragment_unnamed_421 = fragment_unnamed_418 + (-2.5f);
precise float fragment_unnamed_423 = fragment_unnamed_419 + (-0.5f);
precise float fragment_unnamed_425 = fragment_unnamed_420 + 1.5f;
precise float fragment_unnamed_427 = fragment_unnamed_404 / fragment_unnamed_415;
precise float fragment_unnamed_428 = fragment_unnamed_408 / fragment_unnamed_416;
precise float fragment_unnamed_429 = fragment_unnamed_375 / fragment_unnamed_417;
precise float fragment_unnamed_430 = fragment_unnamed_427 + (-2.5f);
precise float fragment_unnamed_431 = fragment_unnamed_428 + (-0.5f);
precise float fragment_unnamed_432 = fragment_unnamed_429 + 1.5f;
precise float fragment_unnamed_436 = fragment_unnamed_423 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_437 = fragment_unnamed_421 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_438 = fragment_unnamed_425 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_442 = fragment_unnamed_430 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_443 = fragment_unnamed_431 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_444 = fragment_unnamed_432 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_483 = fragment_unnamed_415 * fragment_unnamed_413;
precise float fragment_unnamed_484 = fragment_unnamed_415 * fragment_unnamed_414;
precise float fragment_unnamed_485 = fragment_unnamed_415 * fragment_unnamed_412;
precise float fragment_unnamed_486 = fragment_unnamed_416 * fragment_unnamed_413;
precise float fragment_unnamed_487 = fragment_unnamed_416 * fragment_unnamed_411;
precise float fragment_unnamed_488 = fragment_unnamed_416 * fragment_unnamed_412;
precise float fragment_unnamed_489 = fragment_unnamed_417 * fragment_unnamed_413;
precise float fragment_unnamed_490 = fragment_unnamed_417 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_417 * fragment_unnamed_412;
precise float fragment_unnamed_505 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x * fragment_unnamed_484;
float fragment_unnamed_541 = mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_487, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_485, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_483, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, fragment_unnamed_505))))));
fragment_unnamed_339 = mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, fragment_unnamed_541));
}
else
{
float fragment_unnamed_566 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_567 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_566;
precise float fragment_unnamed_577 = (-0.0f) - fragment_unnamed_567;
float fragment_unnamed_578 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_576);
float fragment_unnamed_579 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_577);
precise float fragment_unnamed_580 = fragment_unnamed_578 + 0.5f;
precise float fragment_unnamed_581 = fragment_unnamed_578 + 1.0f;
precise float fragment_unnamed_582 = fragment_unnamed_579 + 0.5f;
precise float fragment_unnamed_583 = fragment_unnamed_579 + 1.0f;
precise float fragment_unnamed_584 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_585 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_586 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_587 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_588 = fragment_unnamed_585 * 0.040816001594066619873046875f;
precise float fragment_unnamed_590 = fragment_unnamed_587 * 0.040816001594066619873046875f;
precise float fragment_unnamed_591 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_592 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_596 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_597 = fragment_unnamed_595 + 1.0f;
precise float fragment_unnamed_598 = fragment_unnamed_596 + 1.0f;
float fragment_unnamed_599 = min(fragment_unnamed_578, 0.0f);
float fragment_unnamed_600 = min(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_601 = (-0.0f) - fragment_unnamed_599;
precise float fragment_unnamed_602 = (-0.0f) - fragment_unnamed_600;
float fragment_unnamed_605 = max(fragment_unnamed_578, 0.0f);
float fragment_unnamed_606 = max(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_607 = (-0.0f) - fragment_unnamed_605;
precise float fragment_unnamed_608 = (-0.0f) - fragment_unnamed_606;
precise float fragment_unnamed_611 = mad(fragment_unnamed_601, fragment_unnamed_599, fragment_unnamed_597) + 2.0f;
precise float fragment_unnamed_612 = mad(fragment_unnamed_602, fragment_unnamed_600, fragment_unnamed_598) + 2.0f;
precise float fragment_unnamed_613 = mad(fragment_unnamed_607, fragment_unnamed_605, fragment_unnamed_581) + 2.0f;
precise float fragment_unnamed_614 = mad(fragment_unnamed_608, fragment_unnamed_606, fragment_unnamed_583) + 2.0f;
precise float fragment_unnamed_615 = fragment_unnamed_613 * 0.08163200318813323974609375f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_586, 0.5f, fragment_unnamed_592) * 0.08163200318813323974609375f;
precise float fragment_unnamed_618 = mad(fragment_unnamed_584, 0.5f, fragment_unnamed_591) * 0.08163200318813323974609375f;
precise float fragment_unnamed_619 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = fragment_unnamed_611 * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = fragment_unnamed_612 * 0.08163200318813323974609375f;
float fragment_unnamed_626 = mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_627 = mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_628 = fragment_unnamed_626 + fragment_unnamed_618;
precise float fragment_unnamed_629 = fragment_unnamed_620 + mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_630 = fragment_unnamed_627 + fragment_unnamed_615;
precise float fragment_unnamed_631 = fragment_unnamed_588 + mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_634 = mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_635 = mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_636 = fragment_unnamed_634 + fragment_unnamed_617;
precise float fragment_unnamed_637 = fragment_unnamed_621 + mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_638 = fragment_unnamed_635 + fragment_unnamed_619;
precise float fragment_unnamed_639 = fragment_unnamed_590 + mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_640 = fragment_unnamed_626 / fragment_unnamed_628;
precise float fragment_unnamed_641 = fragment_unnamed_620 / fragment_unnamed_629;
precise float fragment_unnamed_642 = fragment_unnamed_627 / fragment_unnamed_630;
precise float fragment_unnamed_643 = fragment_unnamed_588 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_640 + (-3.5f);
precise float fragment_unnamed_646 = fragment_unnamed_641 + (-1.5f);
precise float fragment_unnamed_648 = fragment_unnamed_642 + 0.5f;
precise float fragment_unnamed_649 = fragment_unnamed_643 + 2.5f;
precise float fragment_unnamed_651 = fragment_unnamed_634 / fragment_unnamed_636;
precise float fragment_unnamed_652 = fragment_unnamed_621 / fragment_unnamed_637;
precise float fragment_unnamed_653 = fragment_unnamed_635 / fragment_unnamed_638;
precise float fragment_unnamed_654 = fragment_unnamed_590 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_651 + (-3.5f);
precise float fragment_unnamed_656 = fragment_unnamed_652 + (-1.5f);
precise float fragment_unnamed_657 = fragment_unnamed_653 + 0.5f;
precise float fragment_unnamed_658 = fragment_unnamed_654 + 2.5f;
precise float fragment_unnamed_662 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_663 = fragment_unnamed_644 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_664 = fragment_unnamed_646 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_665 = fragment_unnamed_648 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_669 = fragment_unnamed_655 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_670 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_671 = fragment_unnamed_656 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_672 = fragment_unnamed_657 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_749 = fragment_unnamed_636 * fragment_unnamed_628;
precise float fragment_unnamed_750 = fragment_unnamed_636 * fragment_unnamed_629;
precise float fragment_unnamed_751 = fragment_unnamed_636 * fragment_unnamed_630;
precise float fragment_unnamed_752 = fragment_unnamed_636 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_637 * fragment_unnamed_628;
precise float fragment_unnamed_754 = fragment_unnamed_637 * fragment_unnamed_629;
precise float fragment_unnamed_755 = fragment_unnamed_637 * fragment_unnamed_630;
precise float fragment_unnamed_756 = fragment_unnamed_637 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_638 * fragment_unnamed_628;
precise float fragment_unnamed_758 = fragment_unnamed_638 * fragment_unnamed_629;
precise float fragment_unnamed_759 = fragment_unnamed_638 * fragment_unnamed_630;
precise float fragment_unnamed_760 = fragment_unnamed_638 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_639 * fragment_unnamed_628;
precise float fragment_unnamed_762 = fragment_unnamed_639 * fragment_unnamed_629;
precise float fragment_unnamed_763 = fragment_unnamed_639 * fragment_unnamed_630;
precise float fragment_unnamed_764 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_778 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x * fragment_unnamed_750;
float fragment_unnamed_814 = mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_753, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_751, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_749, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, fragment_unnamed_778))))));
float fragment_unnamed_856 = mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, fragment_unnamed_814))))));
fragment_unnamed_339 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, fragment_unnamed_856)));
}
fragment_unnamed_255 = fragment_unnamed_339;
}
fragment_unnamed_254 = fragment_unnamed_255;
}
else
{
fragment_unnamed_254 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_259 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_260 = fragment_unnamed_259 + 1.0f;
float fragment_unnamed_278 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_254, fragment_uniform_buffer_2[27u].x, fragment_unnamed_260)));
float4 fragment_unnamed_298 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_309 = fragment_unnamed_298.x * fragment_input_2.x;
precise float fragment_unnamed_310 = fragment_unnamed_298.y * fragment_input_2.y;
precise float fragment_unnamed_311 = fragment_unnamed_298.z * fragment_input_2.z;
precise float fragment_unnamed_312 = mad(fragment_input_3.x, fragment_unnamed_278, fragment_unnamed_163) * fragment_unnamed_309;
precise float fragment_unnamed_313 = mad(fragment_input_3.y, fragment_unnamed_278, fragment_unnamed_164) * fragment_unnamed_310;
precise float fragment_unnamed_314 = mad(fragment_input_3.z, fragment_unnamed_278, fragment_unnamed_165) * fragment_unnamed_311;
fragment_output_3.x = fragment_unnamed_312;
fragment_output_3.y = fragment_unnamed_313;
fragment_output_3.z = fragment_unnamed_314;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_66 = asfloat(1065353216u);
precise float fragment_unnamed_110 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_111 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_112 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_113 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_148 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_153 = (-0.0f) - fragment_unnamed_148;
float fragment_unnamed_156 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_153);
precise float fragment_unnamed_166 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_167 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_168 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
float fragment_unnamed_257;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_258;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_204 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_205 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_206 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_207 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_232 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_233 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_234 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_235 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_258 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_204, fragment_unnamed_205), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_206, fragment_unnamed_207), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_232, fragment_unnamed_233), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_342;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_354 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_355 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_354;
precise float fragment_unnamed_365 = (-0.0f) - fragment_unnamed_355;
float fragment_unnamed_366 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_364);
float fragment_unnamed_367 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_365);
precise float fragment_unnamed_368 = fragment_unnamed_366 + 0.5f;
precise float fragment_unnamed_369 = fragment_unnamed_366 + 1.0f;
precise float fragment_unnamed_370 = fragment_unnamed_367 + 0.5f;
precise float fragment_unnamed_371 = fragment_unnamed_367 + 1.0f;
precise float fragment_unnamed_372 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_373 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_374 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_375 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_376 = fragment_unnamed_373 * 0.07999999821186065673828125f;
precise float fragment_unnamed_378 = fragment_unnamed_375 * 0.07999999821186065673828125f;
precise float fragment_unnamed_379 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_383 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_384 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_385 = fragment_unnamed_383 + 1.0f;
precise float fragment_unnamed_386 = fragment_unnamed_384 + 1.0f;
float fragment_unnamed_387 = min(fragment_unnamed_366, 0.0f);
float fragment_unnamed_388 = min(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_389 = (-0.0f) - fragment_unnamed_387;
precise float fragment_unnamed_390 = (-0.0f) - fragment_unnamed_388;
float fragment_unnamed_393 = max(fragment_unnamed_366, 0.0f);
float fragment_unnamed_394 = max(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_395 = (-0.0f) - fragment_unnamed_393;
precise float fragment_unnamed_396 = (-0.0f) - fragment_unnamed_394;
precise float fragment_unnamed_399 = mad(fragment_unnamed_389, fragment_unnamed_387, fragment_unnamed_385) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_390, fragment_unnamed_388, fragment_unnamed_386) + 1.0f;
precise float fragment_unnamed_401 = mad(fragment_unnamed_395, fragment_unnamed_393, fragment_unnamed_369) + 1.0f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_396, fragment_unnamed_394, fragment_unnamed_371) + 1.0f;
precise float fragment_unnamed_403 = mad(fragment_unnamed_372, 0.5f, fragment_unnamed_379) * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = mad(fragment_unnamed_374, 0.5f, fragment_unnamed_380) * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_385 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_386 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_400 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_401 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_402 * 0.1599999964237213134765625f;
precise float fragment_unnamed_412 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_413 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_414 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_415 = fragment_unnamed_376 + fragment_unnamed_412;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_403;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_418 = fragment_unnamed_405 + fragment_unnamed_407;
precise float fragment_unnamed_419 = fragment_unnamed_409 + fragment_unnamed_411;
precise float fragment_unnamed_420 = fragment_unnamed_413 + fragment_unnamed_378;
precise float fragment_unnamed_421 = fragment_unnamed_406 / fragment_unnamed_416;
precise float fragment_unnamed_422 = fragment_unnamed_410 / fragment_unnamed_417;
precise float fragment_unnamed_423 = fragment_unnamed_376 / fragment_unnamed_415;
precise float fragment_unnamed_424 = fragment_unnamed_421 + (-2.5f);
precise float fragment_unnamed_426 = fragment_unnamed_422 + (-0.5f);
precise float fragment_unnamed_428 = fragment_unnamed_423 + 1.5f;
precise float fragment_unnamed_430 = fragment_unnamed_407 / fragment_unnamed_418;
precise float fragment_unnamed_431 = fragment_unnamed_411 / fragment_unnamed_419;
precise float fragment_unnamed_432 = fragment_unnamed_378 / fragment_unnamed_420;
precise float fragment_unnamed_433 = fragment_unnamed_430 + (-2.5f);
precise float fragment_unnamed_434 = fragment_unnamed_431 + (-0.5f);
precise float fragment_unnamed_435 = fragment_unnamed_432 + 1.5f;
precise float fragment_unnamed_439 = fragment_unnamed_426 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_440 = fragment_unnamed_424 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_441 = fragment_unnamed_428 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_445 = fragment_unnamed_433 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_446 = fragment_unnamed_434 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_447 = fragment_unnamed_435 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_486 = fragment_unnamed_418 * fragment_unnamed_416;
precise float fragment_unnamed_487 = fragment_unnamed_418 * fragment_unnamed_417;
precise float fragment_unnamed_488 = fragment_unnamed_418 * fragment_unnamed_415;
precise float fragment_unnamed_489 = fragment_unnamed_419 * fragment_unnamed_416;
precise float fragment_unnamed_490 = fragment_unnamed_419 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_419 * fragment_unnamed_415;
precise float fragment_unnamed_492 = fragment_unnamed_420 * fragment_unnamed_416;
precise float fragment_unnamed_493 = fragment_unnamed_420 * fragment_unnamed_417;
precise float fragment_unnamed_494 = fragment_unnamed_420 * fragment_unnamed_415;
precise float fragment_unnamed_508 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x * fragment_unnamed_487;
float fragment_unnamed_544 = mad(fragment_unnamed_492, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, fragment_unnamed_508))))));
fragment_unnamed_342 = mad(fragment_unnamed_494, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_493, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, fragment_unnamed_544));
}
else
{
float fragment_unnamed_569 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_570 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_569;
precise float fragment_unnamed_580 = (-0.0f) - fragment_unnamed_570;
float fragment_unnamed_581 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_579);
float fragment_unnamed_582 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_580);
precise float fragment_unnamed_583 = fragment_unnamed_581 + 0.5f;
precise float fragment_unnamed_584 = fragment_unnamed_581 + 1.0f;
precise float fragment_unnamed_585 = fragment_unnamed_582 + 0.5f;
precise float fragment_unnamed_586 = fragment_unnamed_582 + 1.0f;
precise float fragment_unnamed_587 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_588 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_589 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_590 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_591 = fragment_unnamed_588 * 0.040816001594066619873046875f;
precise float fragment_unnamed_593 = fragment_unnamed_590 * 0.040816001594066619873046875f;
precise float fragment_unnamed_594 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_598 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_599 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_600 = fragment_unnamed_598 + 1.0f;
precise float fragment_unnamed_601 = fragment_unnamed_599 + 1.0f;
float fragment_unnamed_602 = min(fragment_unnamed_581, 0.0f);
float fragment_unnamed_603 = min(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_604 = (-0.0f) - fragment_unnamed_602;
precise float fragment_unnamed_605 = (-0.0f) - fragment_unnamed_603;
float fragment_unnamed_608 = max(fragment_unnamed_581, 0.0f);
float fragment_unnamed_609 = max(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_610 = (-0.0f) - fragment_unnamed_608;
precise float fragment_unnamed_611 = (-0.0f) - fragment_unnamed_609;
precise float fragment_unnamed_614 = mad(fragment_unnamed_604, fragment_unnamed_602, fragment_unnamed_600) + 2.0f;
precise float fragment_unnamed_615 = mad(fragment_unnamed_605, fragment_unnamed_603, fragment_unnamed_601) + 2.0f;
precise float fragment_unnamed_616 = mad(fragment_unnamed_610, fragment_unnamed_608, fragment_unnamed_584) + 2.0f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_611, fragment_unnamed_609, fragment_unnamed_586) + 2.0f;
precise float fragment_unnamed_618 = fragment_unnamed_616 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = mad(fragment_unnamed_589, 0.5f, fragment_unnamed_595) * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = mad(fragment_unnamed_587, 0.5f, fragment_unnamed_594) * 0.08163200318813323974609375f;
precise float fragment_unnamed_622 = fragment_unnamed_617 * 0.08163200318813323974609375f;
precise float fragment_unnamed_623 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_624 = fragment_unnamed_615 * 0.08163200318813323974609375f;
float fragment_unnamed_629 = mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_630 = mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_631 = fragment_unnamed_629 + fragment_unnamed_621;
precise float fragment_unnamed_632 = fragment_unnamed_623 + mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_633 = fragment_unnamed_630 + fragment_unnamed_618;
precise float fragment_unnamed_634 = fragment_unnamed_591 + mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_637 = mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_638 = mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_639 = fragment_unnamed_637 + fragment_unnamed_620;
precise float fragment_unnamed_640 = fragment_unnamed_624 + mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_641 = fragment_unnamed_638 + fragment_unnamed_622;
precise float fragment_unnamed_642 = fragment_unnamed_593 + mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_643 = fragment_unnamed_629 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_623 / fragment_unnamed_632;
precise float fragment_unnamed_645 = fragment_unnamed_630 / fragment_unnamed_633;
precise float fragment_unnamed_646 = fragment_unnamed_591 / fragment_unnamed_634;
precise float fragment_unnamed_647 = fragment_unnamed_643 + (-3.5f);
precise float fragment_unnamed_649 = fragment_unnamed_644 + (-1.5f);
precise float fragment_unnamed_651 = fragment_unnamed_645 + 0.5f;
precise float fragment_unnamed_652 = fragment_unnamed_646 + 2.5f;
precise float fragment_unnamed_654 = fragment_unnamed_637 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_624 / fragment_unnamed_640;
precise float fragment_unnamed_656 = fragment_unnamed_638 / fragment_unnamed_641;
precise float fragment_unnamed_657 = fragment_unnamed_593 / fragment_unnamed_642;
precise float fragment_unnamed_658 = fragment_unnamed_654 + (-3.5f);
precise float fragment_unnamed_659 = fragment_unnamed_655 + (-1.5f);
precise float fragment_unnamed_660 = fragment_unnamed_656 + 0.5f;
precise float fragment_unnamed_661 = fragment_unnamed_657 + 2.5f;
precise float fragment_unnamed_665 = fragment_unnamed_652 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_666 = fragment_unnamed_647 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_667 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_668 = fragment_unnamed_651 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_672 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_673 = fragment_unnamed_661 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_674 = fragment_unnamed_659 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_675 = fragment_unnamed_660 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_639 * fragment_unnamed_632;
precise float fragment_unnamed_754 = fragment_unnamed_639 * fragment_unnamed_633;
precise float fragment_unnamed_755 = fragment_unnamed_639 * fragment_unnamed_634;
precise float fragment_unnamed_756 = fragment_unnamed_640 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_640 * fragment_unnamed_632;
precise float fragment_unnamed_758 = fragment_unnamed_640 * fragment_unnamed_633;
precise float fragment_unnamed_759 = fragment_unnamed_640 * fragment_unnamed_634;
precise float fragment_unnamed_760 = fragment_unnamed_641 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_641 * fragment_unnamed_632;
precise float fragment_unnamed_762 = fragment_unnamed_641 * fragment_unnamed_633;
precise float fragment_unnamed_763 = fragment_unnamed_641 * fragment_unnamed_634;
precise float fragment_unnamed_764 = fragment_unnamed_642 * fragment_unnamed_631;
precise float fragment_unnamed_765 = fragment_unnamed_642 * fragment_unnamed_632;
precise float fragment_unnamed_766 = fragment_unnamed_642 * fragment_unnamed_633;
precise float fragment_unnamed_767 = fragment_unnamed_642 * fragment_unnamed_634;
precise float fragment_unnamed_781 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x * fragment_unnamed_753;
float fragment_unnamed_817 = mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, fragment_unnamed_781))))));
float fragment_unnamed_859 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, fragment_unnamed_817))))));
fragment_unnamed_342 = mad(fragment_unnamed_767, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_766, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_765, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, fragment_unnamed_859)));
}
fragment_unnamed_258 = fragment_unnamed_342;
}
fragment_unnamed_257 = fragment_unnamed_258;
}
else
{
fragment_unnamed_257 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_262 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_263 = fragment_unnamed_262 + 1.0f;
float fragment_unnamed_281 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_257, fragment_uniform_buffer_2[27u].x, fragment_unnamed_263)));
float4 fragment_unnamed_301 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_312 = fragment_unnamed_301.x * fragment_input_2.x;
precise float fragment_unnamed_313 = fragment_unnamed_301.y * fragment_input_2.y;
precise float fragment_unnamed_314 = fragment_unnamed_301.z * fragment_input_2.z;
precise float fragment_unnamed_315 = mad(fragment_input_3.x, fragment_unnamed_281, fragment_unnamed_166) * fragment_unnamed_312;
precise float fragment_unnamed_316 = mad(fragment_input_3.y, fragment_unnamed_281, fragment_unnamed_167) * fragment_unnamed_313;
precise float fragment_unnamed_317 = mad(fragment_input_3.z, fragment_unnamed_281, fragment_unnamed_168) * fragment_unnamed_314;
fragment_output_3.x = fragment_unnamed_315;
fragment_output_3.y = fragment_unnamed_316;
fragment_output_3.z = fragment_unnamed_317;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float fragment_unnamed_254;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_255;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_201 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_202 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_203 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_204 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_229 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_230 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_231 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_232 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_255 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_201, fragment_unnamed_202), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_203, fragment_unnamed_204), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_229, fragment_unnamed_230), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_339;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_351 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_352 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_351;
precise float fragment_unnamed_362 = (-0.0f) - fragment_unnamed_352;
float fragment_unnamed_363 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_361);
float fragment_unnamed_364 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_362);
precise float fragment_unnamed_365 = fragment_unnamed_363 + 0.5f;
precise float fragment_unnamed_366 = fragment_unnamed_363 + 1.0f;
precise float fragment_unnamed_367 = fragment_unnamed_364 + 0.5f;
precise float fragment_unnamed_368 = fragment_unnamed_364 + 1.0f;
precise float fragment_unnamed_369 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_370 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_371 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_372 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_373 = fragment_unnamed_370 * 0.07999999821186065673828125f;
precise float fragment_unnamed_375 = fragment_unnamed_372 * 0.07999999821186065673828125f;
precise float fragment_unnamed_376 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_377 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_381 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_382 = fragment_unnamed_380 + 1.0f;
precise float fragment_unnamed_383 = fragment_unnamed_381 + 1.0f;
float fragment_unnamed_384 = min(fragment_unnamed_363, 0.0f);
float fragment_unnamed_385 = min(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_386 = (-0.0f) - fragment_unnamed_384;
precise float fragment_unnamed_387 = (-0.0f) - fragment_unnamed_385;
float fragment_unnamed_390 = max(fragment_unnamed_363, 0.0f);
float fragment_unnamed_391 = max(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_392 = (-0.0f) - fragment_unnamed_390;
precise float fragment_unnamed_393 = (-0.0f) - fragment_unnamed_391;
precise float fragment_unnamed_396 = mad(fragment_unnamed_386, fragment_unnamed_384, fragment_unnamed_382) + 1.0f;
precise float fragment_unnamed_397 = mad(fragment_unnamed_387, fragment_unnamed_385, fragment_unnamed_383) + 1.0f;
precise float fragment_unnamed_398 = mad(fragment_unnamed_392, fragment_unnamed_390, fragment_unnamed_366) + 1.0f;
precise float fragment_unnamed_399 = mad(fragment_unnamed_393, fragment_unnamed_391, fragment_unnamed_368) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_369, 0.5f, fragment_unnamed_376) * 0.1599999964237213134765625f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_371, 0.5f, fragment_unnamed_377) * 0.1599999964237213134765625f;
precise float fragment_unnamed_403 = fragment_unnamed_382 * 0.1599999964237213134765625f;
precise float fragment_unnamed_404 = fragment_unnamed_383 * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = fragment_unnamed_396 * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_397 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_398 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_366 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_412 = fragment_unnamed_373 + fragment_unnamed_409;
precise float fragment_unnamed_413 = fragment_unnamed_403 + fragment_unnamed_400;
precise float fragment_unnamed_414 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_415 = fragment_unnamed_402 + fragment_unnamed_404;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_408;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_375;
precise float fragment_unnamed_418 = fragment_unnamed_403 / fragment_unnamed_413;
precise float fragment_unnamed_419 = fragment_unnamed_407 / fragment_unnamed_414;
precise float fragment_unnamed_420 = fragment_unnamed_373 / fragment_unnamed_412;
precise float fragment_unnamed_421 = fragment_unnamed_418 + (-2.5f);
precise float fragment_unnamed_423 = fragment_unnamed_419 + (-0.5f);
precise float fragment_unnamed_425 = fragment_unnamed_420 + 1.5f;
precise float fragment_unnamed_427 = fragment_unnamed_404 / fragment_unnamed_415;
precise float fragment_unnamed_428 = fragment_unnamed_408 / fragment_unnamed_416;
precise float fragment_unnamed_429 = fragment_unnamed_375 / fragment_unnamed_417;
precise float fragment_unnamed_430 = fragment_unnamed_427 + (-2.5f);
precise float fragment_unnamed_431 = fragment_unnamed_428 + (-0.5f);
precise float fragment_unnamed_432 = fragment_unnamed_429 + 1.5f;
precise float fragment_unnamed_436 = fragment_unnamed_423 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_437 = fragment_unnamed_421 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_438 = fragment_unnamed_425 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_442 = fragment_unnamed_430 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_443 = fragment_unnamed_431 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_444 = fragment_unnamed_432 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_483 = fragment_unnamed_415 * fragment_unnamed_413;
precise float fragment_unnamed_484 = fragment_unnamed_415 * fragment_unnamed_414;
precise float fragment_unnamed_485 = fragment_unnamed_415 * fragment_unnamed_412;
precise float fragment_unnamed_486 = fragment_unnamed_416 * fragment_unnamed_413;
precise float fragment_unnamed_487 = fragment_unnamed_416 * fragment_unnamed_411;
precise float fragment_unnamed_488 = fragment_unnamed_416 * fragment_unnamed_412;
precise float fragment_unnamed_489 = fragment_unnamed_417 * fragment_unnamed_413;
precise float fragment_unnamed_490 = fragment_unnamed_417 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_417 * fragment_unnamed_412;
precise float fragment_unnamed_505 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x * fragment_unnamed_484;
float fragment_unnamed_541 = mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_487, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_485, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_483, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, fragment_unnamed_505))))));
fragment_unnamed_339 = mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, fragment_unnamed_541));
}
else
{
float fragment_unnamed_566 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_567 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_566;
precise float fragment_unnamed_577 = (-0.0f) - fragment_unnamed_567;
float fragment_unnamed_578 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_576);
float fragment_unnamed_579 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_577);
precise float fragment_unnamed_580 = fragment_unnamed_578 + 0.5f;
precise float fragment_unnamed_581 = fragment_unnamed_578 + 1.0f;
precise float fragment_unnamed_582 = fragment_unnamed_579 + 0.5f;
precise float fragment_unnamed_583 = fragment_unnamed_579 + 1.0f;
precise float fragment_unnamed_584 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_585 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_586 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_587 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_588 = fragment_unnamed_585 * 0.040816001594066619873046875f;
precise float fragment_unnamed_590 = fragment_unnamed_587 * 0.040816001594066619873046875f;
precise float fragment_unnamed_591 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_592 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_596 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_597 = fragment_unnamed_595 + 1.0f;
precise float fragment_unnamed_598 = fragment_unnamed_596 + 1.0f;
float fragment_unnamed_599 = min(fragment_unnamed_578, 0.0f);
float fragment_unnamed_600 = min(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_601 = (-0.0f) - fragment_unnamed_599;
precise float fragment_unnamed_602 = (-0.0f) - fragment_unnamed_600;
float fragment_unnamed_605 = max(fragment_unnamed_578, 0.0f);
float fragment_unnamed_606 = max(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_607 = (-0.0f) - fragment_unnamed_605;
precise float fragment_unnamed_608 = (-0.0f) - fragment_unnamed_606;
precise float fragment_unnamed_611 = mad(fragment_unnamed_601, fragment_unnamed_599, fragment_unnamed_597) + 2.0f;
precise float fragment_unnamed_612 = mad(fragment_unnamed_602, fragment_unnamed_600, fragment_unnamed_598) + 2.0f;
precise float fragment_unnamed_613 = mad(fragment_unnamed_607, fragment_unnamed_605, fragment_unnamed_581) + 2.0f;
precise float fragment_unnamed_614 = mad(fragment_unnamed_608, fragment_unnamed_606, fragment_unnamed_583) + 2.0f;
precise float fragment_unnamed_615 = fragment_unnamed_613 * 0.08163200318813323974609375f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_586, 0.5f, fragment_unnamed_592) * 0.08163200318813323974609375f;
precise float fragment_unnamed_618 = mad(fragment_unnamed_584, 0.5f, fragment_unnamed_591) * 0.08163200318813323974609375f;
precise float fragment_unnamed_619 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = fragment_unnamed_611 * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = fragment_unnamed_612 * 0.08163200318813323974609375f;
float fragment_unnamed_626 = mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_627 = mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_628 = fragment_unnamed_626 + fragment_unnamed_618;
precise float fragment_unnamed_629 = fragment_unnamed_620 + mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_630 = fragment_unnamed_627 + fragment_unnamed_615;
precise float fragment_unnamed_631 = fragment_unnamed_588 + mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_634 = mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_635 = mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_636 = fragment_unnamed_634 + fragment_unnamed_617;
precise float fragment_unnamed_637 = fragment_unnamed_621 + mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_638 = fragment_unnamed_635 + fragment_unnamed_619;
precise float fragment_unnamed_639 = fragment_unnamed_590 + mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_640 = fragment_unnamed_626 / fragment_unnamed_628;
precise float fragment_unnamed_641 = fragment_unnamed_620 / fragment_unnamed_629;
precise float fragment_unnamed_642 = fragment_unnamed_627 / fragment_unnamed_630;
precise float fragment_unnamed_643 = fragment_unnamed_588 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_640 + (-3.5f);
precise float fragment_unnamed_646 = fragment_unnamed_641 + (-1.5f);
precise float fragment_unnamed_648 = fragment_unnamed_642 + 0.5f;
precise float fragment_unnamed_649 = fragment_unnamed_643 + 2.5f;
precise float fragment_unnamed_651 = fragment_unnamed_634 / fragment_unnamed_636;
precise float fragment_unnamed_652 = fragment_unnamed_621 / fragment_unnamed_637;
precise float fragment_unnamed_653 = fragment_unnamed_635 / fragment_unnamed_638;
precise float fragment_unnamed_654 = fragment_unnamed_590 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_651 + (-3.5f);
precise float fragment_unnamed_656 = fragment_unnamed_652 + (-1.5f);
precise float fragment_unnamed_657 = fragment_unnamed_653 + 0.5f;
precise float fragment_unnamed_658 = fragment_unnamed_654 + 2.5f;
precise float fragment_unnamed_662 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_663 = fragment_unnamed_644 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_664 = fragment_unnamed_646 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_665 = fragment_unnamed_648 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_669 = fragment_unnamed_655 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_670 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_671 = fragment_unnamed_656 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_672 = fragment_unnamed_657 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_749 = fragment_unnamed_636 * fragment_unnamed_628;
precise float fragment_unnamed_750 = fragment_unnamed_636 * fragment_unnamed_629;
precise float fragment_unnamed_751 = fragment_unnamed_636 * fragment_unnamed_630;
precise float fragment_unnamed_752 = fragment_unnamed_636 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_637 * fragment_unnamed_628;
precise float fragment_unnamed_754 = fragment_unnamed_637 * fragment_unnamed_629;
precise float fragment_unnamed_755 = fragment_unnamed_637 * fragment_unnamed_630;
precise float fragment_unnamed_756 = fragment_unnamed_637 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_638 * fragment_unnamed_628;
precise float fragment_unnamed_758 = fragment_unnamed_638 * fragment_unnamed_629;
precise float fragment_unnamed_759 = fragment_unnamed_638 * fragment_unnamed_630;
precise float fragment_unnamed_760 = fragment_unnamed_638 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_639 * fragment_unnamed_628;
precise float fragment_unnamed_762 = fragment_unnamed_639 * fragment_unnamed_629;
precise float fragment_unnamed_763 = fragment_unnamed_639 * fragment_unnamed_630;
precise float fragment_unnamed_764 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_778 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x * fragment_unnamed_750;
float fragment_unnamed_814 = mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_753, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_751, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_749, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, fragment_unnamed_778))))));
float fragment_unnamed_856 = mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, fragment_unnamed_814))))));
fragment_unnamed_339 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, fragment_unnamed_856)));
}
fragment_unnamed_255 = fragment_unnamed_339;
}
fragment_unnamed_254 = fragment_unnamed_255;
}
else
{
fragment_unnamed_254 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_259 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_260 = fragment_unnamed_259 + 1.0f;
float fragment_unnamed_278 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_254, fragment_uniform_buffer_2[27u].x, fragment_unnamed_260)));
float4 fragment_unnamed_298 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_309 = fragment_unnamed_298.x * fragment_input_2.x;
precise float fragment_unnamed_310 = fragment_unnamed_298.y * fragment_input_2.y;
precise float fragment_unnamed_311 = fragment_unnamed_298.z * fragment_input_2.z;
precise float fragment_unnamed_312 = mad(fragment_input_3.x, fragment_unnamed_278, fragment_unnamed_163) * fragment_unnamed_309;
precise float fragment_unnamed_313 = mad(fragment_input_3.y, fragment_unnamed_278, fragment_unnamed_164) * fragment_unnamed_310;
precise float fragment_unnamed_314 = mad(fragment_input_3.z, fragment_unnamed_278, fragment_unnamed_165) * fragment_unnamed_311;
fragment_output_3.x = fragment_unnamed_312;
fragment_output_3.y = fragment_unnamed_313;
fragment_output_3.z = fragment_unnamed_314;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_83 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_88 = (-0.0f) - fragment_unnamed_83;
float fragment_unnamed_91 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_88);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_154 = asfloat(1065353216u);
precise float fragment_unnamed_185 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_186 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_187 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_204 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_205 = fragment_unnamed_204 + 1.0f;
float fragment_unnamed_224 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_205)));
float4 fragment_unnamed_244 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_255 = fragment_unnamed_244.x * fragment_input_2.x;
precise float fragment_unnamed_256 = fragment_unnamed_244.y * fragment_input_2.y;
precise float fragment_unnamed_257 = fragment_unnamed_244.z * fragment_input_2.z;
precise float fragment_unnamed_258 = mad(fragment_input_3.x, fragment_unnamed_224, fragment_unnamed_185) * fragment_unnamed_255;
precise float fragment_unnamed_259 = mad(fragment_input_3.y, fragment_unnamed_224, fragment_unnamed_186) * fragment_unnamed_256;
precise float fragment_unnamed_260 = mad(fragment_input_3.z, fragment_unnamed_224, fragment_unnamed_187) * fragment_unnamed_257;
fragment_output_3.x = fragment_unnamed_258;
fragment_output_3.y = fragment_unnamed_259;
fragment_output_3.z = fragment_unnamed_260;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_86 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_91 = (-0.0f) - fragment_unnamed_86;
float fragment_unnamed_94 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_91);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_157 = asfloat(1065353216u);
precise float fragment_unnamed_188 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_189 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_190 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_207 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_208 = fragment_unnamed_207 + 1.0f;
float fragment_unnamed_227 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_208)));
float4 fragment_unnamed_247 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_258 = fragment_unnamed_247.x * fragment_input_2.x;
precise float fragment_unnamed_259 = fragment_unnamed_247.y * fragment_input_2.y;
precise float fragment_unnamed_260 = fragment_unnamed_247.z * fragment_input_2.z;
precise float fragment_unnamed_261 = mad(fragment_input_3.x, fragment_unnamed_227, fragment_unnamed_188) * fragment_unnamed_258;
precise float fragment_unnamed_262 = mad(fragment_input_3.y, fragment_unnamed_227, fragment_unnamed_189) * fragment_unnamed_259;
precise float fragment_unnamed_263 = mad(fragment_input_3.z, fragment_unnamed_227, fragment_unnamed_190) * fragment_unnamed_260;
fragment_output_3.x = fragment_unnamed_261;
fragment_output_3.y = fragment_unnamed_262;
fragment_output_3.z = fragment_unnamed_263;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#endif // !_SHADOWS_SOFT
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_83 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_88 = (-0.0f) - fragment_unnamed_83;
float fragment_unnamed_91 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_88);
precise float fragment_unnamed_104 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_105 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_106 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_107 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_154 = asfloat(1065353216u);
precise float fragment_unnamed_185 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_186 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_187 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_91, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_104, fragment_unnamed_105, fragment_unnamed_106, fragment_unnamed_107))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_154));
precise float fragment_unnamed_204 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_205 = fragment_unnamed_204 + 1.0f;
float fragment_unnamed_224 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_205)));
float4 fragment_unnamed_244 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_255 = fragment_unnamed_244.x * fragment_input_2.x;
precise float fragment_unnamed_256 = fragment_unnamed_244.y * fragment_input_2.y;
precise float fragment_unnamed_257 = fragment_unnamed_244.z * fragment_input_2.z;
precise float fragment_unnamed_258 = mad(fragment_input_3.x, fragment_unnamed_224, fragment_unnamed_185) * fragment_unnamed_255;
precise float fragment_unnamed_259 = mad(fragment_input_3.y, fragment_unnamed_224, fragment_unnamed_186) * fragment_unnamed_256;
precise float fragment_unnamed_260 = mad(fragment_input_3.z, fragment_unnamed_224, fragment_unnamed_187) * fragment_unnamed_257;
fragment_output_3.x = fragment_unnamed_258;
fragment_output_3.y = fragment_unnamed_259;
fragment_output_3.z = fragment_unnamed_260;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifndef _MAIN_LIGHT_SHADOWS
#ifndef _SHADOWS_SOFT
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowParams;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[28];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
precise float fragment_unnamed_86 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_91 = (-0.0f) - fragment_unnamed_86;
float fragment_unnamed_94 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_91);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
float fragment_unnamed_157 = asfloat(1065353216u);
precise float fragment_unnamed_188 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_189 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_190 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_94, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_157));
precise float fragment_unnamed_207 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_208 = fragment_unnamed_207 + 1.0f;
float fragment_unnamed_227 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x, fragment_uniform_buffer_2[27u].x, fragment_unnamed_208)));
float4 fragment_unnamed_247 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_258 = fragment_unnamed_247.x * fragment_input_2.x;
precise float fragment_unnamed_259 = fragment_unnamed_247.y * fragment_input_2.y;
precise float fragment_unnamed_260 = fragment_unnamed_247.z * fragment_input_2.z;
precise float fragment_unnamed_261 = mad(fragment_input_3.x, fragment_unnamed_227, fragment_unnamed_188) * fragment_unnamed_258;
precise float fragment_unnamed_262 = mad(fragment_input_3.y, fragment_unnamed_227, fragment_unnamed_189) * fragment_unnamed_259;
precise float fragment_unnamed_263 = mad(fragment_input_3.z, fragment_unnamed_227, fragment_unnamed_190) * fragment_unnamed_260;
fragment_output_3.x = fragment_unnamed_261;
fragment_output_3.y = fragment_unnamed_262;
fragment_output_3.z = fragment_unnamed_263;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[27] = float4(_MainLightShadowParams[0], _MainLightShadowParams[1], _MainLightShadowParams[2], _MainLightShadowParams[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS_CASCADE
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // !_MAIN_LIGHT_SHADOWS
#endif // !_SHADOWS_SOFT
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_66 = asfloat(1065353216u);
precise float fragment_unnamed_110 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_111 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_112 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_113 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_148 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_153 = (-0.0f) - fragment_unnamed_148;
float fragment_unnamed_156 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_153);
precise float fragment_unnamed_166 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_167 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_168 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
float fragment_unnamed_257;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_258;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_204 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_205 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_206 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_207 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_232 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_233 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_234 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_235 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_258 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_204, fragment_unnamed_205), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_206, fragment_unnamed_207), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_232, fragment_unnamed_233), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_342;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_354 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_355 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_354;
precise float fragment_unnamed_365 = (-0.0f) - fragment_unnamed_355;
float fragment_unnamed_366 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_364);
float fragment_unnamed_367 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_365);
precise float fragment_unnamed_368 = fragment_unnamed_366 + 0.5f;
precise float fragment_unnamed_369 = fragment_unnamed_366 + 1.0f;
precise float fragment_unnamed_370 = fragment_unnamed_367 + 0.5f;
precise float fragment_unnamed_371 = fragment_unnamed_367 + 1.0f;
precise float fragment_unnamed_372 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_373 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_374 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_375 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_376 = fragment_unnamed_373 * 0.07999999821186065673828125f;
precise float fragment_unnamed_378 = fragment_unnamed_375 * 0.07999999821186065673828125f;
precise float fragment_unnamed_379 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_383 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_384 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_385 = fragment_unnamed_383 + 1.0f;
precise float fragment_unnamed_386 = fragment_unnamed_384 + 1.0f;
float fragment_unnamed_387 = min(fragment_unnamed_366, 0.0f);
float fragment_unnamed_388 = min(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_389 = (-0.0f) - fragment_unnamed_387;
precise float fragment_unnamed_390 = (-0.0f) - fragment_unnamed_388;
float fragment_unnamed_393 = max(fragment_unnamed_366, 0.0f);
float fragment_unnamed_394 = max(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_395 = (-0.0f) - fragment_unnamed_393;
precise float fragment_unnamed_396 = (-0.0f) - fragment_unnamed_394;
precise float fragment_unnamed_399 = mad(fragment_unnamed_389, fragment_unnamed_387, fragment_unnamed_385) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_390, fragment_unnamed_388, fragment_unnamed_386) + 1.0f;
precise float fragment_unnamed_401 = mad(fragment_unnamed_395, fragment_unnamed_393, fragment_unnamed_369) + 1.0f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_396, fragment_unnamed_394, fragment_unnamed_371) + 1.0f;
precise float fragment_unnamed_403 = mad(fragment_unnamed_372, 0.5f, fragment_unnamed_379) * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = mad(fragment_unnamed_374, 0.5f, fragment_unnamed_380) * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_385 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_386 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_400 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_401 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_402 * 0.1599999964237213134765625f;
precise float fragment_unnamed_412 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_413 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_414 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_415 = fragment_unnamed_376 + fragment_unnamed_412;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_403;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_418 = fragment_unnamed_405 + fragment_unnamed_407;
precise float fragment_unnamed_419 = fragment_unnamed_409 + fragment_unnamed_411;
precise float fragment_unnamed_420 = fragment_unnamed_413 + fragment_unnamed_378;
precise float fragment_unnamed_421 = fragment_unnamed_406 / fragment_unnamed_416;
precise float fragment_unnamed_422 = fragment_unnamed_410 / fragment_unnamed_417;
precise float fragment_unnamed_423 = fragment_unnamed_376 / fragment_unnamed_415;
precise float fragment_unnamed_424 = fragment_unnamed_421 + (-2.5f);
precise float fragment_unnamed_426 = fragment_unnamed_422 + (-0.5f);
precise float fragment_unnamed_428 = fragment_unnamed_423 + 1.5f;
precise float fragment_unnamed_430 = fragment_unnamed_407 / fragment_unnamed_418;
precise float fragment_unnamed_431 = fragment_unnamed_411 / fragment_unnamed_419;
precise float fragment_unnamed_432 = fragment_unnamed_378 / fragment_unnamed_420;
precise float fragment_unnamed_433 = fragment_unnamed_430 + (-2.5f);
precise float fragment_unnamed_434 = fragment_unnamed_431 + (-0.5f);
precise float fragment_unnamed_435 = fragment_unnamed_432 + 1.5f;
precise float fragment_unnamed_439 = fragment_unnamed_426 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_440 = fragment_unnamed_424 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_441 = fragment_unnamed_428 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_445 = fragment_unnamed_433 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_446 = fragment_unnamed_434 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_447 = fragment_unnamed_435 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_486 = fragment_unnamed_418 * fragment_unnamed_416;
precise float fragment_unnamed_487 = fragment_unnamed_418 * fragment_unnamed_417;
precise float fragment_unnamed_488 = fragment_unnamed_418 * fragment_unnamed_415;
precise float fragment_unnamed_489 = fragment_unnamed_419 * fragment_unnamed_416;
precise float fragment_unnamed_490 = fragment_unnamed_419 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_419 * fragment_unnamed_415;
precise float fragment_unnamed_492 = fragment_unnamed_420 * fragment_unnamed_416;
precise float fragment_unnamed_493 = fragment_unnamed_420 * fragment_unnamed_417;
precise float fragment_unnamed_494 = fragment_unnamed_420 * fragment_unnamed_415;
precise float fragment_unnamed_508 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x * fragment_unnamed_487;
float fragment_unnamed_544 = mad(fragment_unnamed_492, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, fragment_unnamed_508))))));
fragment_unnamed_342 = mad(fragment_unnamed_494, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_493, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, fragment_unnamed_544));
}
else
{
float fragment_unnamed_569 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_570 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_569;
precise float fragment_unnamed_580 = (-0.0f) - fragment_unnamed_570;
float fragment_unnamed_581 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_579);
float fragment_unnamed_582 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_580);
precise float fragment_unnamed_583 = fragment_unnamed_581 + 0.5f;
precise float fragment_unnamed_584 = fragment_unnamed_581 + 1.0f;
precise float fragment_unnamed_585 = fragment_unnamed_582 + 0.5f;
precise float fragment_unnamed_586 = fragment_unnamed_582 + 1.0f;
precise float fragment_unnamed_587 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_588 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_589 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_590 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_591 = fragment_unnamed_588 * 0.040816001594066619873046875f;
precise float fragment_unnamed_593 = fragment_unnamed_590 * 0.040816001594066619873046875f;
precise float fragment_unnamed_594 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_598 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_599 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_600 = fragment_unnamed_598 + 1.0f;
precise float fragment_unnamed_601 = fragment_unnamed_599 + 1.0f;
float fragment_unnamed_602 = min(fragment_unnamed_581, 0.0f);
float fragment_unnamed_603 = min(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_604 = (-0.0f) - fragment_unnamed_602;
precise float fragment_unnamed_605 = (-0.0f) - fragment_unnamed_603;
float fragment_unnamed_608 = max(fragment_unnamed_581, 0.0f);
float fragment_unnamed_609 = max(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_610 = (-0.0f) - fragment_unnamed_608;
precise float fragment_unnamed_611 = (-0.0f) - fragment_unnamed_609;
precise float fragment_unnamed_614 = mad(fragment_unnamed_604, fragment_unnamed_602, fragment_unnamed_600) + 2.0f;
precise float fragment_unnamed_615 = mad(fragment_unnamed_605, fragment_unnamed_603, fragment_unnamed_601) + 2.0f;
precise float fragment_unnamed_616 = mad(fragment_unnamed_610, fragment_unnamed_608, fragment_unnamed_584) + 2.0f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_611, fragment_unnamed_609, fragment_unnamed_586) + 2.0f;
precise float fragment_unnamed_618 = fragment_unnamed_616 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = mad(fragment_unnamed_589, 0.5f, fragment_unnamed_595) * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = mad(fragment_unnamed_587, 0.5f, fragment_unnamed_594) * 0.08163200318813323974609375f;
precise float fragment_unnamed_622 = fragment_unnamed_617 * 0.08163200318813323974609375f;
precise float fragment_unnamed_623 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_624 = fragment_unnamed_615 * 0.08163200318813323974609375f;
float fragment_unnamed_629 = mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_630 = mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_631 = fragment_unnamed_629 + fragment_unnamed_621;
precise float fragment_unnamed_632 = fragment_unnamed_623 + mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_633 = fragment_unnamed_630 + fragment_unnamed_618;
precise float fragment_unnamed_634 = fragment_unnamed_591 + mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_637 = mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_638 = mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_639 = fragment_unnamed_637 + fragment_unnamed_620;
precise float fragment_unnamed_640 = fragment_unnamed_624 + mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_641 = fragment_unnamed_638 + fragment_unnamed_622;
precise float fragment_unnamed_642 = fragment_unnamed_593 + mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_643 = fragment_unnamed_629 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_623 / fragment_unnamed_632;
precise float fragment_unnamed_645 = fragment_unnamed_630 / fragment_unnamed_633;
precise float fragment_unnamed_646 = fragment_unnamed_591 / fragment_unnamed_634;
precise float fragment_unnamed_647 = fragment_unnamed_643 + (-3.5f);
precise float fragment_unnamed_649 = fragment_unnamed_644 + (-1.5f);
precise float fragment_unnamed_651 = fragment_unnamed_645 + 0.5f;
precise float fragment_unnamed_652 = fragment_unnamed_646 + 2.5f;
precise float fragment_unnamed_654 = fragment_unnamed_637 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_624 / fragment_unnamed_640;
precise float fragment_unnamed_656 = fragment_unnamed_638 / fragment_unnamed_641;
precise float fragment_unnamed_657 = fragment_unnamed_593 / fragment_unnamed_642;
precise float fragment_unnamed_658 = fragment_unnamed_654 + (-3.5f);
precise float fragment_unnamed_659 = fragment_unnamed_655 + (-1.5f);
precise float fragment_unnamed_660 = fragment_unnamed_656 + 0.5f;
precise float fragment_unnamed_661 = fragment_unnamed_657 + 2.5f;
precise float fragment_unnamed_665 = fragment_unnamed_652 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_666 = fragment_unnamed_647 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_667 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_668 = fragment_unnamed_651 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_672 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_673 = fragment_unnamed_661 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_674 = fragment_unnamed_659 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_675 = fragment_unnamed_660 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_639 * fragment_unnamed_632;
precise float fragment_unnamed_754 = fragment_unnamed_639 * fragment_unnamed_633;
precise float fragment_unnamed_755 = fragment_unnamed_639 * fragment_unnamed_634;
precise float fragment_unnamed_756 = fragment_unnamed_640 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_640 * fragment_unnamed_632;
precise float fragment_unnamed_758 = fragment_unnamed_640 * fragment_unnamed_633;
precise float fragment_unnamed_759 = fragment_unnamed_640 * fragment_unnamed_634;
precise float fragment_unnamed_760 = fragment_unnamed_641 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_641 * fragment_unnamed_632;
precise float fragment_unnamed_762 = fragment_unnamed_641 * fragment_unnamed_633;
precise float fragment_unnamed_763 = fragment_unnamed_641 * fragment_unnamed_634;
precise float fragment_unnamed_764 = fragment_unnamed_642 * fragment_unnamed_631;
precise float fragment_unnamed_765 = fragment_unnamed_642 * fragment_unnamed_632;
precise float fragment_unnamed_766 = fragment_unnamed_642 * fragment_unnamed_633;
precise float fragment_unnamed_767 = fragment_unnamed_642 * fragment_unnamed_634;
precise float fragment_unnamed_781 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x * fragment_unnamed_753;
float fragment_unnamed_817 = mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, fragment_unnamed_781))))));
float fragment_unnamed_859 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, fragment_unnamed_817))))));
fragment_unnamed_342 = mad(fragment_unnamed_767, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_766, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_765, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, fragment_unnamed_859)));
}
fragment_unnamed_258 = fragment_unnamed_342;
}
fragment_unnamed_257 = fragment_unnamed_258;
}
else
{
fragment_unnamed_257 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_262 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_263 = fragment_unnamed_262 + 1.0f;
float fragment_unnamed_281 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_257, fragment_uniform_buffer_2[27u].x, fragment_unnamed_263)));
float4 fragment_unnamed_301 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_312 = fragment_unnamed_301.x * fragment_input_2.x;
precise float fragment_unnamed_313 = fragment_unnamed_301.y * fragment_input_2.y;
precise float fragment_unnamed_314 = fragment_unnamed_301.z * fragment_input_2.z;
precise float fragment_unnamed_315 = mad(fragment_input_3.x, fragment_unnamed_281, fragment_unnamed_166) * fragment_unnamed_312;
precise float fragment_unnamed_316 = mad(fragment_input_3.y, fragment_unnamed_281, fragment_unnamed_167) * fragment_unnamed_313;
precise float fragment_unnamed_317 = mad(fragment_input_3.z, fragment_unnamed_281, fragment_unnamed_168) * fragment_unnamed_314;
fragment_output_3.x = fragment_unnamed_315;
fragment_output_3.y = fragment_unnamed_316;
fragment_output_3.z = fragment_unnamed_317;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _MIXED_LIGHTING_SUBTRACTIVE
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float fragment_unnamed_254;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_255;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_201 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_202 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_203 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_204 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_229 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_230 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_231 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_232 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_255 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_201, fragment_unnamed_202), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_203, fragment_unnamed_204), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_229, fragment_unnamed_230), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_339;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_351 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_352 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_351;
precise float fragment_unnamed_362 = (-0.0f) - fragment_unnamed_352;
float fragment_unnamed_363 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_361);
float fragment_unnamed_364 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_362);
precise float fragment_unnamed_365 = fragment_unnamed_363 + 0.5f;
precise float fragment_unnamed_366 = fragment_unnamed_363 + 1.0f;
precise float fragment_unnamed_367 = fragment_unnamed_364 + 0.5f;
precise float fragment_unnamed_368 = fragment_unnamed_364 + 1.0f;
precise float fragment_unnamed_369 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_370 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_371 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_372 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_373 = fragment_unnamed_370 * 0.07999999821186065673828125f;
precise float fragment_unnamed_375 = fragment_unnamed_372 * 0.07999999821186065673828125f;
precise float fragment_unnamed_376 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_377 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_381 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_382 = fragment_unnamed_380 + 1.0f;
precise float fragment_unnamed_383 = fragment_unnamed_381 + 1.0f;
float fragment_unnamed_384 = min(fragment_unnamed_363, 0.0f);
float fragment_unnamed_385 = min(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_386 = (-0.0f) - fragment_unnamed_384;
precise float fragment_unnamed_387 = (-0.0f) - fragment_unnamed_385;
float fragment_unnamed_390 = max(fragment_unnamed_363, 0.0f);
float fragment_unnamed_391 = max(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_392 = (-0.0f) - fragment_unnamed_390;
precise float fragment_unnamed_393 = (-0.0f) - fragment_unnamed_391;
precise float fragment_unnamed_396 = mad(fragment_unnamed_386, fragment_unnamed_384, fragment_unnamed_382) + 1.0f;
precise float fragment_unnamed_397 = mad(fragment_unnamed_387, fragment_unnamed_385, fragment_unnamed_383) + 1.0f;
precise float fragment_unnamed_398 = mad(fragment_unnamed_392, fragment_unnamed_390, fragment_unnamed_366) + 1.0f;
precise float fragment_unnamed_399 = mad(fragment_unnamed_393, fragment_unnamed_391, fragment_unnamed_368) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_369, 0.5f, fragment_unnamed_376) * 0.1599999964237213134765625f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_371, 0.5f, fragment_unnamed_377) * 0.1599999964237213134765625f;
precise float fragment_unnamed_403 = fragment_unnamed_382 * 0.1599999964237213134765625f;
precise float fragment_unnamed_404 = fragment_unnamed_383 * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = fragment_unnamed_396 * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_397 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_398 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_366 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_412 = fragment_unnamed_373 + fragment_unnamed_409;
precise float fragment_unnamed_413 = fragment_unnamed_403 + fragment_unnamed_400;
precise float fragment_unnamed_414 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_415 = fragment_unnamed_402 + fragment_unnamed_404;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_408;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_375;
precise float fragment_unnamed_418 = fragment_unnamed_403 / fragment_unnamed_413;
precise float fragment_unnamed_419 = fragment_unnamed_407 / fragment_unnamed_414;
precise float fragment_unnamed_420 = fragment_unnamed_373 / fragment_unnamed_412;
precise float fragment_unnamed_421 = fragment_unnamed_418 + (-2.5f);
precise float fragment_unnamed_423 = fragment_unnamed_419 + (-0.5f);
precise float fragment_unnamed_425 = fragment_unnamed_420 + 1.5f;
precise float fragment_unnamed_427 = fragment_unnamed_404 / fragment_unnamed_415;
precise float fragment_unnamed_428 = fragment_unnamed_408 / fragment_unnamed_416;
precise float fragment_unnamed_429 = fragment_unnamed_375 / fragment_unnamed_417;
precise float fragment_unnamed_430 = fragment_unnamed_427 + (-2.5f);
precise float fragment_unnamed_431 = fragment_unnamed_428 + (-0.5f);
precise float fragment_unnamed_432 = fragment_unnamed_429 + 1.5f;
precise float fragment_unnamed_436 = fragment_unnamed_423 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_437 = fragment_unnamed_421 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_438 = fragment_unnamed_425 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_442 = fragment_unnamed_430 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_443 = fragment_unnamed_431 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_444 = fragment_unnamed_432 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_483 = fragment_unnamed_415 * fragment_unnamed_413;
precise float fragment_unnamed_484 = fragment_unnamed_415 * fragment_unnamed_414;
precise float fragment_unnamed_485 = fragment_unnamed_415 * fragment_unnamed_412;
precise float fragment_unnamed_486 = fragment_unnamed_416 * fragment_unnamed_413;
precise float fragment_unnamed_487 = fragment_unnamed_416 * fragment_unnamed_411;
precise float fragment_unnamed_488 = fragment_unnamed_416 * fragment_unnamed_412;
precise float fragment_unnamed_489 = fragment_unnamed_417 * fragment_unnamed_413;
precise float fragment_unnamed_490 = fragment_unnamed_417 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_417 * fragment_unnamed_412;
precise float fragment_unnamed_505 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x * fragment_unnamed_484;
float fragment_unnamed_541 = mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_487, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_485, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_483, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, fragment_unnamed_505))))));
fragment_unnamed_339 = mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, fragment_unnamed_541));
}
else
{
float fragment_unnamed_566 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_567 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_566;
precise float fragment_unnamed_577 = (-0.0f) - fragment_unnamed_567;
float fragment_unnamed_578 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_576);
float fragment_unnamed_579 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_577);
precise float fragment_unnamed_580 = fragment_unnamed_578 + 0.5f;
precise float fragment_unnamed_581 = fragment_unnamed_578 + 1.0f;
precise float fragment_unnamed_582 = fragment_unnamed_579 + 0.5f;
precise float fragment_unnamed_583 = fragment_unnamed_579 + 1.0f;
precise float fragment_unnamed_584 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_585 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_586 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_587 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_588 = fragment_unnamed_585 * 0.040816001594066619873046875f;
precise float fragment_unnamed_590 = fragment_unnamed_587 * 0.040816001594066619873046875f;
precise float fragment_unnamed_591 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_592 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_596 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_597 = fragment_unnamed_595 + 1.0f;
precise float fragment_unnamed_598 = fragment_unnamed_596 + 1.0f;
float fragment_unnamed_599 = min(fragment_unnamed_578, 0.0f);
float fragment_unnamed_600 = min(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_601 = (-0.0f) - fragment_unnamed_599;
precise float fragment_unnamed_602 = (-0.0f) - fragment_unnamed_600;
float fragment_unnamed_605 = max(fragment_unnamed_578, 0.0f);
float fragment_unnamed_606 = max(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_607 = (-0.0f) - fragment_unnamed_605;
precise float fragment_unnamed_608 = (-0.0f) - fragment_unnamed_606;
precise float fragment_unnamed_611 = mad(fragment_unnamed_601, fragment_unnamed_599, fragment_unnamed_597) + 2.0f;
precise float fragment_unnamed_612 = mad(fragment_unnamed_602, fragment_unnamed_600, fragment_unnamed_598) + 2.0f;
precise float fragment_unnamed_613 = mad(fragment_unnamed_607, fragment_unnamed_605, fragment_unnamed_581) + 2.0f;
precise float fragment_unnamed_614 = mad(fragment_unnamed_608, fragment_unnamed_606, fragment_unnamed_583) + 2.0f;
precise float fragment_unnamed_615 = fragment_unnamed_613 * 0.08163200318813323974609375f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_586, 0.5f, fragment_unnamed_592) * 0.08163200318813323974609375f;
precise float fragment_unnamed_618 = mad(fragment_unnamed_584, 0.5f, fragment_unnamed_591) * 0.08163200318813323974609375f;
precise float fragment_unnamed_619 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = fragment_unnamed_611 * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = fragment_unnamed_612 * 0.08163200318813323974609375f;
float fragment_unnamed_626 = mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_627 = mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_628 = fragment_unnamed_626 + fragment_unnamed_618;
precise float fragment_unnamed_629 = fragment_unnamed_620 + mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_630 = fragment_unnamed_627 + fragment_unnamed_615;
precise float fragment_unnamed_631 = fragment_unnamed_588 + mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_634 = mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_635 = mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_636 = fragment_unnamed_634 + fragment_unnamed_617;
precise float fragment_unnamed_637 = fragment_unnamed_621 + mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_638 = fragment_unnamed_635 + fragment_unnamed_619;
precise float fragment_unnamed_639 = fragment_unnamed_590 + mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_640 = fragment_unnamed_626 / fragment_unnamed_628;
precise float fragment_unnamed_641 = fragment_unnamed_620 / fragment_unnamed_629;
precise float fragment_unnamed_642 = fragment_unnamed_627 / fragment_unnamed_630;
precise float fragment_unnamed_643 = fragment_unnamed_588 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_640 + (-3.5f);
precise float fragment_unnamed_646 = fragment_unnamed_641 + (-1.5f);
precise float fragment_unnamed_648 = fragment_unnamed_642 + 0.5f;
precise float fragment_unnamed_649 = fragment_unnamed_643 + 2.5f;
precise float fragment_unnamed_651 = fragment_unnamed_634 / fragment_unnamed_636;
precise float fragment_unnamed_652 = fragment_unnamed_621 / fragment_unnamed_637;
precise float fragment_unnamed_653 = fragment_unnamed_635 / fragment_unnamed_638;
precise float fragment_unnamed_654 = fragment_unnamed_590 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_651 + (-3.5f);
precise float fragment_unnamed_656 = fragment_unnamed_652 + (-1.5f);
precise float fragment_unnamed_657 = fragment_unnamed_653 + 0.5f;
precise float fragment_unnamed_658 = fragment_unnamed_654 + 2.5f;
precise float fragment_unnamed_662 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_663 = fragment_unnamed_644 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_664 = fragment_unnamed_646 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_665 = fragment_unnamed_648 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_669 = fragment_unnamed_655 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_670 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_671 = fragment_unnamed_656 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_672 = fragment_unnamed_657 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_749 = fragment_unnamed_636 * fragment_unnamed_628;
precise float fragment_unnamed_750 = fragment_unnamed_636 * fragment_unnamed_629;
precise float fragment_unnamed_751 = fragment_unnamed_636 * fragment_unnamed_630;
precise float fragment_unnamed_752 = fragment_unnamed_636 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_637 * fragment_unnamed_628;
precise float fragment_unnamed_754 = fragment_unnamed_637 * fragment_unnamed_629;
precise float fragment_unnamed_755 = fragment_unnamed_637 * fragment_unnamed_630;
precise float fragment_unnamed_756 = fragment_unnamed_637 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_638 * fragment_unnamed_628;
precise float fragment_unnamed_758 = fragment_unnamed_638 * fragment_unnamed_629;
precise float fragment_unnamed_759 = fragment_unnamed_638 * fragment_unnamed_630;
precise float fragment_unnamed_760 = fragment_unnamed_638 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_639 * fragment_unnamed_628;
precise float fragment_unnamed_762 = fragment_unnamed_639 * fragment_unnamed_629;
precise float fragment_unnamed_763 = fragment_unnamed_639 * fragment_unnamed_630;
precise float fragment_unnamed_764 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_778 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x * fragment_unnamed_750;
float fragment_unnamed_814 = mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_753, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_751, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_749, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, fragment_unnamed_778))))));
float fragment_unnamed_856 = mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, fragment_unnamed_814))))));
fragment_unnamed_339 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, fragment_unnamed_856)));
}
fragment_unnamed_255 = fragment_unnamed_339;
}
fragment_unnamed_254 = fragment_unnamed_255;
}
else
{
fragment_unnamed_254 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_259 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_260 = fragment_unnamed_259 + 1.0f;
float fragment_unnamed_278 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_254, fragment_uniform_buffer_2[27u].x, fragment_unnamed_260)));
float4 fragment_unnamed_298 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_309 = fragment_unnamed_298.x * fragment_input_2.x;
precise float fragment_unnamed_310 = fragment_unnamed_298.y * fragment_input_2.y;
precise float fragment_unnamed_311 = fragment_unnamed_298.z * fragment_input_2.z;
precise float fragment_unnamed_312 = mad(fragment_input_3.x, fragment_unnamed_278, fragment_unnamed_163) * fragment_unnamed_309;
precise float fragment_unnamed_313 = mad(fragment_input_3.y, fragment_unnamed_278, fragment_unnamed_164) * fragment_unnamed_310;
precise float fragment_unnamed_314 = mad(fragment_input_3.z, fragment_unnamed_278, fragment_unnamed_165) * fragment_unnamed_311;
fragment_output_3.x = fragment_unnamed_312;
fragment_output_3.y = fragment_unnamed_313;
fragment_output_3.z = fragment_unnamed_314;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // _MIXED_LIGHTING_SUBTRACTIVE
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#ifdef STEREO_INSTANCING_ON
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static uint fragment_input_8;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
uint fragment_input_8 : SV_InstanceID; // SV_InstanceID
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_66 = asfloat(1065353216u);
precise float fragment_unnamed_110 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_111 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_112 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_113 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_148 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_153 = (-0.0f) - fragment_unnamed_148;
float fragment_unnamed_156 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_153);
precise float fragment_unnamed_166 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_167 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
precise float fragment_unnamed_168 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_156, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_110, fragment_unnamed_111, fragment_unnamed_112, fragment_unnamed_113))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_66));
float fragment_unnamed_257;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_258;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_204 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_205 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_206 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_207 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_232 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_233 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_234 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_235 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_258 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_204, fragment_unnamed_205), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_206, fragment_unnamed_207), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_232, fragment_unnamed_233), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_234, fragment_unnamed_235), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_342;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_354 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_355 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_364 = (-0.0f) - fragment_unnamed_354;
precise float fragment_unnamed_365 = (-0.0f) - fragment_unnamed_355;
float fragment_unnamed_366 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_364);
float fragment_unnamed_367 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_365);
precise float fragment_unnamed_368 = fragment_unnamed_366 + 0.5f;
precise float fragment_unnamed_369 = fragment_unnamed_366 + 1.0f;
precise float fragment_unnamed_370 = fragment_unnamed_367 + 0.5f;
precise float fragment_unnamed_371 = fragment_unnamed_367 + 1.0f;
precise float fragment_unnamed_372 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_373 = fragment_unnamed_368 * fragment_unnamed_368;
precise float fragment_unnamed_374 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_375 = fragment_unnamed_370 * fragment_unnamed_370;
precise float fragment_unnamed_376 = fragment_unnamed_373 * 0.07999999821186065673828125f;
precise float fragment_unnamed_378 = fragment_unnamed_375 * 0.07999999821186065673828125f;
precise float fragment_unnamed_379 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_383 = (-0.0f) - fragment_unnamed_366;
precise float fragment_unnamed_384 = (-0.0f) - fragment_unnamed_367;
precise float fragment_unnamed_385 = fragment_unnamed_383 + 1.0f;
precise float fragment_unnamed_386 = fragment_unnamed_384 + 1.0f;
float fragment_unnamed_387 = min(fragment_unnamed_366, 0.0f);
float fragment_unnamed_388 = min(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_389 = (-0.0f) - fragment_unnamed_387;
precise float fragment_unnamed_390 = (-0.0f) - fragment_unnamed_388;
float fragment_unnamed_393 = max(fragment_unnamed_366, 0.0f);
float fragment_unnamed_394 = max(fragment_unnamed_367, 0.0f);
precise float fragment_unnamed_395 = (-0.0f) - fragment_unnamed_393;
precise float fragment_unnamed_396 = (-0.0f) - fragment_unnamed_394;
precise float fragment_unnamed_399 = mad(fragment_unnamed_389, fragment_unnamed_387, fragment_unnamed_385) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_390, fragment_unnamed_388, fragment_unnamed_386) + 1.0f;
precise float fragment_unnamed_401 = mad(fragment_unnamed_395, fragment_unnamed_393, fragment_unnamed_369) + 1.0f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_396, fragment_unnamed_394, fragment_unnamed_371) + 1.0f;
precise float fragment_unnamed_403 = mad(fragment_unnamed_372, 0.5f, fragment_unnamed_379) * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = mad(fragment_unnamed_374, 0.5f, fragment_unnamed_380) * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_385 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_386 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_400 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_401 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_402 * 0.1599999964237213134765625f;
precise float fragment_unnamed_412 = fragment_unnamed_369 * 0.1599999964237213134765625f;
precise float fragment_unnamed_413 = fragment_unnamed_371 * 0.1599999964237213134765625f;
precise float fragment_unnamed_414 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_415 = fragment_unnamed_376 + fragment_unnamed_412;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_403;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_408;
precise float fragment_unnamed_418 = fragment_unnamed_405 + fragment_unnamed_407;
precise float fragment_unnamed_419 = fragment_unnamed_409 + fragment_unnamed_411;
precise float fragment_unnamed_420 = fragment_unnamed_413 + fragment_unnamed_378;
precise float fragment_unnamed_421 = fragment_unnamed_406 / fragment_unnamed_416;
precise float fragment_unnamed_422 = fragment_unnamed_410 / fragment_unnamed_417;
precise float fragment_unnamed_423 = fragment_unnamed_376 / fragment_unnamed_415;
precise float fragment_unnamed_424 = fragment_unnamed_421 + (-2.5f);
precise float fragment_unnamed_426 = fragment_unnamed_422 + (-0.5f);
precise float fragment_unnamed_428 = fragment_unnamed_423 + 1.5f;
precise float fragment_unnamed_430 = fragment_unnamed_407 / fragment_unnamed_418;
precise float fragment_unnamed_431 = fragment_unnamed_411 / fragment_unnamed_419;
precise float fragment_unnamed_432 = fragment_unnamed_378 / fragment_unnamed_420;
precise float fragment_unnamed_433 = fragment_unnamed_430 + (-2.5f);
precise float fragment_unnamed_434 = fragment_unnamed_431 + (-0.5f);
precise float fragment_unnamed_435 = fragment_unnamed_432 + 1.5f;
precise float fragment_unnamed_439 = fragment_unnamed_426 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_440 = fragment_unnamed_424 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_441 = fragment_unnamed_428 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_445 = fragment_unnamed_433 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_446 = fragment_unnamed_434 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_447 = fragment_unnamed_435 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_486 = fragment_unnamed_418 * fragment_unnamed_416;
precise float fragment_unnamed_487 = fragment_unnamed_418 * fragment_unnamed_417;
precise float fragment_unnamed_488 = fragment_unnamed_418 * fragment_unnamed_415;
precise float fragment_unnamed_489 = fragment_unnamed_419 * fragment_unnamed_416;
precise float fragment_unnamed_490 = fragment_unnamed_419 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_419 * fragment_unnamed_415;
precise float fragment_unnamed_492 = fragment_unnamed_420 * fragment_unnamed_416;
precise float fragment_unnamed_493 = fragment_unnamed_420 * fragment_unnamed_417;
precise float fragment_unnamed_494 = fragment_unnamed_420 * fragment_unnamed_415;
precise float fragment_unnamed_508 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x * fragment_unnamed_487;
float fragment_unnamed_544 = mad(fragment_unnamed_492, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_446)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_440), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_445)), fragment_input_4.z).xxxx.x, fragment_unnamed_508))))));
fragment_unnamed_342 = mad(fragment_unnamed_494, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_441), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_493, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_354, fragment_uniform_buffer_2[28u].x, fragment_unnamed_439), mad(fragment_unnamed_355, fragment_uniform_buffer_2[28u].y, fragment_unnamed_447)), fragment_input_4.z).xxxx.x, fragment_unnamed_544));
}
else
{
float fragment_unnamed_569 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_570 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_579 = (-0.0f) - fragment_unnamed_569;
precise float fragment_unnamed_580 = (-0.0f) - fragment_unnamed_570;
float fragment_unnamed_581 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_579);
float fragment_unnamed_582 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_580);
precise float fragment_unnamed_583 = fragment_unnamed_581 + 0.5f;
precise float fragment_unnamed_584 = fragment_unnamed_581 + 1.0f;
precise float fragment_unnamed_585 = fragment_unnamed_582 + 0.5f;
precise float fragment_unnamed_586 = fragment_unnamed_582 + 1.0f;
precise float fragment_unnamed_587 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_588 = fragment_unnamed_583 * fragment_unnamed_583;
precise float fragment_unnamed_589 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_590 = fragment_unnamed_585 * fragment_unnamed_585;
precise float fragment_unnamed_591 = fragment_unnamed_588 * 0.040816001594066619873046875f;
precise float fragment_unnamed_593 = fragment_unnamed_590 * 0.040816001594066619873046875f;
precise float fragment_unnamed_594 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_598 = (-0.0f) - fragment_unnamed_581;
precise float fragment_unnamed_599 = (-0.0f) - fragment_unnamed_582;
precise float fragment_unnamed_600 = fragment_unnamed_598 + 1.0f;
precise float fragment_unnamed_601 = fragment_unnamed_599 + 1.0f;
float fragment_unnamed_602 = min(fragment_unnamed_581, 0.0f);
float fragment_unnamed_603 = min(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_604 = (-0.0f) - fragment_unnamed_602;
precise float fragment_unnamed_605 = (-0.0f) - fragment_unnamed_603;
float fragment_unnamed_608 = max(fragment_unnamed_581, 0.0f);
float fragment_unnamed_609 = max(fragment_unnamed_582, 0.0f);
precise float fragment_unnamed_610 = (-0.0f) - fragment_unnamed_608;
precise float fragment_unnamed_611 = (-0.0f) - fragment_unnamed_609;
precise float fragment_unnamed_614 = mad(fragment_unnamed_604, fragment_unnamed_602, fragment_unnamed_600) + 2.0f;
precise float fragment_unnamed_615 = mad(fragment_unnamed_605, fragment_unnamed_603, fragment_unnamed_601) + 2.0f;
precise float fragment_unnamed_616 = mad(fragment_unnamed_610, fragment_unnamed_608, fragment_unnamed_584) + 2.0f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_611, fragment_unnamed_609, fragment_unnamed_586) + 2.0f;
precise float fragment_unnamed_618 = fragment_unnamed_616 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = mad(fragment_unnamed_589, 0.5f, fragment_unnamed_595) * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = mad(fragment_unnamed_587, 0.5f, fragment_unnamed_594) * 0.08163200318813323974609375f;
precise float fragment_unnamed_622 = fragment_unnamed_617 * 0.08163200318813323974609375f;
precise float fragment_unnamed_623 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_624 = fragment_unnamed_615 * 0.08163200318813323974609375f;
float fragment_unnamed_629 = mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_630 = mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_631 = fragment_unnamed_629 + fragment_unnamed_621;
precise float fragment_unnamed_632 = fragment_unnamed_623 + mad(fragment_unnamed_581, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_633 = fragment_unnamed_630 + fragment_unnamed_618;
precise float fragment_unnamed_634 = fragment_unnamed_591 + mad(fragment_unnamed_581, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_637 = mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_638 = mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_639 = fragment_unnamed_637 + fragment_unnamed_620;
precise float fragment_unnamed_640 = fragment_unnamed_624 + mad(fragment_unnamed_582, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_641 = fragment_unnamed_638 + fragment_unnamed_622;
precise float fragment_unnamed_642 = fragment_unnamed_593 + mad(fragment_unnamed_582, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_643 = fragment_unnamed_629 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_623 / fragment_unnamed_632;
precise float fragment_unnamed_645 = fragment_unnamed_630 / fragment_unnamed_633;
precise float fragment_unnamed_646 = fragment_unnamed_591 / fragment_unnamed_634;
precise float fragment_unnamed_647 = fragment_unnamed_643 + (-3.5f);
precise float fragment_unnamed_649 = fragment_unnamed_644 + (-1.5f);
precise float fragment_unnamed_651 = fragment_unnamed_645 + 0.5f;
precise float fragment_unnamed_652 = fragment_unnamed_646 + 2.5f;
precise float fragment_unnamed_654 = fragment_unnamed_637 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_624 / fragment_unnamed_640;
precise float fragment_unnamed_656 = fragment_unnamed_638 / fragment_unnamed_641;
precise float fragment_unnamed_657 = fragment_unnamed_593 / fragment_unnamed_642;
precise float fragment_unnamed_658 = fragment_unnamed_654 + (-3.5f);
precise float fragment_unnamed_659 = fragment_unnamed_655 + (-1.5f);
precise float fragment_unnamed_660 = fragment_unnamed_656 + 0.5f;
precise float fragment_unnamed_661 = fragment_unnamed_657 + 2.5f;
precise float fragment_unnamed_665 = fragment_unnamed_652 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_666 = fragment_unnamed_647 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_667 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_668 = fragment_unnamed_651 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_672 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_673 = fragment_unnamed_661 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_674 = fragment_unnamed_659 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_675 = fragment_unnamed_660 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_752 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_639 * fragment_unnamed_632;
precise float fragment_unnamed_754 = fragment_unnamed_639 * fragment_unnamed_633;
precise float fragment_unnamed_755 = fragment_unnamed_639 * fragment_unnamed_634;
precise float fragment_unnamed_756 = fragment_unnamed_640 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_640 * fragment_unnamed_632;
precise float fragment_unnamed_758 = fragment_unnamed_640 * fragment_unnamed_633;
precise float fragment_unnamed_759 = fragment_unnamed_640 * fragment_unnamed_634;
precise float fragment_unnamed_760 = fragment_unnamed_641 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_641 * fragment_unnamed_632;
precise float fragment_unnamed_762 = fragment_unnamed_641 * fragment_unnamed_633;
precise float fragment_unnamed_763 = fragment_unnamed_641 * fragment_unnamed_634;
precise float fragment_unnamed_764 = fragment_unnamed_642 * fragment_unnamed_631;
precise float fragment_unnamed_765 = fragment_unnamed_642 * fragment_unnamed_632;
precise float fragment_unnamed_766 = fragment_unnamed_642 * fragment_unnamed_633;
precise float fragment_unnamed_767 = fragment_unnamed_642 * fragment_unnamed_634;
precise float fragment_unnamed_781 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x * fragment_unnamed_753;
float fragment_unnamed_817 = mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, fragment_unnamed_781))))));
float fragment_unnamed_859 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_666), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_675)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_674)), fragment_input_4.z).xxxx.x, fragment_unnamed_817))))));
fragment_unnamed_342 = mad(fragment_unnamed_767, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_766, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_668), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_765, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_569, fragment_uniform_buffer_2[28u].x, fragment_unnamed_667), mad(fragment_unnamed_570, fragment_uniform_buffer_2[28u].y, fragment_unnamed_673)), fragment_input_4.z).xxxx.x, fragment_unnamed_859)));
}
fragment_unnamed_258 = fragment_unnamed_342;
}
fragment_unnamed_257 = fragment_unnamed_258;
}
else
{
fragment_unnamed_257 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_262 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_263 = fragment_unnamed_262 + 1.0f;
float fragment_unnamed_281 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_257, fragment_uniform_buffer_2[27u].x, fragment_unnamed_263)));
float4 fragment_unnamed_301 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_312 = fragment_unnamed_301.x * fragment_input_2.x;
precise float fragment_unnamed_313 = fragment_unnamed_301.y * fragment_input_2.y;
precise float fragment_unnamed_314 = fragment_unnamed_301.z * fragment_input_2.z;
precise float fragment_unnamed_315 = mad(fragment_input_3.x, fragment_unnamed_281, fragment_unnamed_166) * fragment_unnamed_312;
precise float fragment_unnamed_316 = mad(fragment_input_3.y, fragment_unnamed_281, fragment_unnamed_167) * fragment_unnamed_313;
precise float fragment_unnamed_317 = mad(fragment_input_3.z, fragment_unnamed_281, fragment_unnamed_168) * fragment_unnamed_314;
fragment_output_3.x = fragment_unnamed_315;
fragment_output_3.y = fragment_unnamed_316;
fragment_output_3.z = fragment_unnamed_317;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
fragment_input_8 = stage_input.fragment_input_8;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
#ifdef _MAIN_LIGHT_SHADOWS
#ifdef _SHADOWS_SOFT
#ifndef STEREO_INSTANCING_ON
#ifndef _MAIN_LIGHT_SHADOWS_CASCADE
#ifndef _MIXED_LIGHTING_SUBTRACTIVE
#define ANY_SHADER_VARIANT_ACTIVE
float2 _GlobalMipBias;
float4 unity_SHAr;
float4 unity_SHAg;
float4 unity_SHAb;
float4 unity_SHBr;
float4 unity_SHBg;
float4 unity_SHBb;
float4 unity_SHC;
float4 _MainLightShadowOffset0;
float4 _MainLightShadowOffset1;
float4 _MainLightShadowmapSize;
static float4 fragment_uniform_buffer_0[5];
static float4 fragment_uniform_buffer_1[34];
static float4 fragment_uniform_buffer_2[29];
Texture2D<float4> _MainLightShadowmapTexture;
Texture2D<float4> _MainTex;
SamplerComparisonState S0;
SamplerState sampler_MainTex;
static float2 fragment_input_0;
static float3 fragment_input_1;
static float4 fragment_input_2;
static float4 fragment_input_3;
static float4 fragment_input_4;
static float3 fragment_input_5;
static float3 fragment_input_6;
static float4 fragment_output_0;
static float4 fragment_output_1;
static float4 fragment_output_2;
static float4 fragment_output_3;
struct Fragment_Stage_Input
{
float2 fragment_input_0 : TEXCOORD; // TEXCOORD
float3 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float4 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
float4 fragment_input_4 : TEXCOORD4; // TEXCOORD_4
float3 fragment_input_5 : TEXCOORD5; // TEXCOORD_5
float3 fragment_input_6 : TEXCOORD6; // TEXCOORD_6
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
float4 fragment_output_1 : SV_Target1;
float4 fragment_output_2 : SV_Target2;
float4 fragment_output_3 : SV_Target3;
};
void frag_main()
{
float fragment_unnamed_63 = asfloat(1065353216u);
precise float fragment_unnamed_107 = fragment_input_5.y * fragment_input_5.x;
precise float fragment_unnamed_108 = fragment_input_5.z * fragment_input_5.y;
precise float fragment_unnamed_109 = fragment_input_5.z * fragment_input_5.z;
precise float fragment_unnamed_110 = fragment_input_5.x * fragment_input_5.z;
precise float fragment_unnamed_145 = fragment_input_5.y * fragment_input_5.y;
precise float fragment_unnamed_150 = (-0.0f) - fragment_unnamed_145;
float fragment_unnamed_153 = mad(fragment_input_5.x, fragment_input_5.x, fragment_unnamed_150);
precise float fragment_unnamed_163 = mad(fragment_uniform_buffer_1[33u].x, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[30u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[27u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_164 = mad(fragment_uniform_buffer_1[33u].y, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[31u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[28u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
precise float fragment_unnamed_165 = mad(fragment_uniform_buffer_1[33u].z, fragment_unnamed_153, dot(float4(fragment_uniform_buffer_1[32u]), float4(fragment_unnamed_107, fragment_unnamed_108, fragment_unnamed_109, fragment_unnamed_110))) + dot(float4(fragment_uniform_buffer_1[29u]), float4(fragment_input_5.x, fragment_input_5.y, fragment_input_5.z, fragment_unnamed_63));
float fragment_unnamed_254;
if (0.0f < fragment_uniform_buffer_2[27u].y)
{
float fragment_unnamed_255;
if (fragment_uniform_buffer_2[27u].y == 1.0f)
{
precise float fragment_unnamed_201 = fragment_input_4.x + fragment_uniform_buffer_2[25u].x;
precise float fragment_unnamed_202 = fragment_input_4.y + fragment_uniform_buffer_2[25u].y;
precise float fragment_unnamed_203 = fragment_input_4.x + fragment_uniform_buffer_2[25u].z;
precise float fragment_unnamed_204 = fragment_input_4.y + fragment_uniform_buffer_2[25u].w;
precise float fragment_unnamed_229 = fragment_input_4.x + fragment_uniform_buffer_2[26u].x;
precise float fragment_unnamed_230 = fragment_input_4.y + fragment_uniform_buffer_2[26u].y;
precise float fragment_unnamed_231 = fragment_input_4.x + fragment_uniform_buffer_2[26u].z;
precise float fragment_unnamed_232 = fragment_input_4.y + fragment_uniform_buffer_2[26u].w;
fragment_unnamed_255 = dot(float4(_MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_201, fragment_unnamed_202), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_203, fragment_unnamed_204), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_229, fragment_unnamed_230), fragment_input_4.z).xxxx.x, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_unnamed_231, fragment_unnamed_232), fragment_input_4.z).xxxx.x), 0.25f.xxxx);
}
else
{
float fragment_unnamed_339;
if (fragment_uniform_buffer_2[27u].y == 2.0f)
{
float fragment_unnamed_351 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_352 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_361 = (-0.0f) - fragment_unnamed_351;
precise float fragment_unnamed_362 = (-0.0f) - fragment_unnamed_352;
float fragment_unnamed_363 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_361);
float fragment_unnamed_364 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_362);
precise float fragment_unnamed_365 = fragment_unnamed_363 + 0.5f;
precise float fragment_unnamed_366 = fragment_unnamed_363 + 1.0f;
precise float fragment_unnamed_367 = fragment_unnamed_364 + 0.5f;
precise float fragment_unnamed_368 = fragment_unnamed_364 + 1.0f;
precise float fragment_unnamed_369 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_370 = fragment_unnamed_365 * fragment_unnamed_365;
precise float fragment_unnamed_371 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_372 = fragment_unnamed_367 * fragment_unnamed_367;
precise float fragment_unnamed_373 = fragment_unnamed_370 * 0.07999999821186065673828125f;
precise float fragment_unnamed_375 = fragment_unnamed_372 * 0.07999999821186065673828125f;
precise float fragment_unnamed_376 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_377 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_380 = (-0.0f) - fragment_unnamed_363;
precise float fragment_unnamed_381 = (-0.0f) - fragment_unnamed_364;
precise float fragment_unnamed_382 = fragment_unnamed_380 + 1.0f;
precise float fragment_unnamed_383 = fragment_unnamed_381 + 1.0f;
float fragment_unnamed_384 = min(fragment_unnamed_363, 0.0f);
float fragment_unnamed_385 = min(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_386 = (-0.0f) - fragment_unnamed_384;
precise float fragment_unnamed_387 = (-0.0f) - fragment_unnamed_385;
float fragment_unnamed_390 = max(fragment_unnamed_363, 0.0f);
float fragment_unnamed_391 = max(fragment_unnamed_364, 0.0f);
precise float fragment_unnamed_392 = (-0.0f) - fragment_unnamed_390;
precise float fragment_unnamed_393 = (-0.0f) - fragment_unnamed_391;
precise float fragment_unnamed_396 = mad(fragment_unnamed_386, fragment_unnamed_384, fragment_unnamed_382) + 1.0f;
precise float fragment_unnamed_397 = mad(fragment_unnamed_387, fragment_unnamed_385, fragment_unnamed_383) + 1.0f;
precise float fragment_unnamed_398 = mad(fragment_unnamed_392, fragment_unnamed_390, fragment_unnamed_366) + 1.0f;
precise float fragment_unnamed_399 = mad(fragment_unnamed_393, fragment_unnamed_391, fragment_unnamed_368) + 1.0f;
precise float fragment_unnamed_400 = mad(fragment_unnamed_369, 0.5f, fragment_unnamed_376) * 0.1599999964237213134765625f;
precise float fragment_unnamed_402 = mad(fragment_unnamed_371, 0.5f, fragment_unnamed_377) * 0.1599999964237213134765625f;
precise float fragment_unnamed_403 = fragment_unnamed_382 * 0.1599999964237213134765625f;
precise float fragment_unnamed_404 = fragment_unnamed_383 * 0.1599999964237213134765625f;
precise float fragment_unnamed_405 = fragment_unnamed_396 * 0.1599999964237213134765625f;
precise float fragment_unnamed_406 = fragment_unnamed_397 * 0.1599999964237213134765625f;
precise float fragment_unnamed_407 = fragment_unnamed_398 * 0.1599999964237213134765625f;
precise float fragment_unnamed_408 = fragment_unnamed_399 * 0.1599999964237213134765625f;
precise float fragment_unnamed_409 = fragment_unnamed_366 * 0.1599999964237213134765625f;
precise float fragment_unnamed_410 = fragment_unnamed_368 * 0.1599999964237213134765625f;
precise float fragment_unnamed_411 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_412 = fragment_unnamed_373 + fragment_unnamed_409;
precise float fragment_unnamed_413 = fragment_unnamed_403 + fragment_unnamed_400;
precise float fragment_unnamed_414 = fragment_unnamed_407 + fragment_unnamed_405;
precise float fragment_unnamed_415 = fragment_unnamed_402 + fragment_unnamed_404;
precise float fragment_unnamed_416 = fragment_unnamed_406 + fragment_unnamed_408;
precise float fragment_unnamed_417 = fragment_unnamed_410 + fragment_unnamed_375;
precise float fragment_unnamed_418 = fragment_unnamed_403 / fragment_unnamed_413;
precise float fragment_unnamed_419 = fragment_unnamed_407 / fragment_unnamed_414;
precise float fragment_unnamed_420 = fragment_unnamed_373 / fragment_unnamed_412;
precise float fragment_unnamed_421 = fragment_unnamed_418 + (-2.5f);
precise float fragment_unnamed_423 = fragment_unnamed_419 + (-0.5f);
precise float fragment_unnamed_425 = fragment_unnamed_420 + 1.5f;
precise float fragment_unnamed_427 = fragment_unnamed_404 / fragment_unnamed_415;
precise float fragment_unnamed_428 = fragment_unnamed_408 / fragment_unnamed_416;
precise float fragment_unnamed_429 = fragment_unnamed_375 / fragment_unnamed_417;
precise float fragment_unnamed_430 = fragment_unnamed_427 + (-2.5f);
precise float fragment_unnamed_431 = fragment_unnamed_428 + (-0.5f);
precise float fragment_unnamed_432 = fragment_unnamed_429 + 1.5f;
precise float fragment_unnamed_436 = fragment_unnamed_423 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_437 = fragment_unnamed_421 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_438 = fragment_unnamed_425 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_442 = fragment_unnamed_430 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_443 = fragment_unnamed_431 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_444 = fragment_unnamed_432 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_483 = fragment_unnamed_415 * fragment_unnamed_413;
precise float fragment_unnamed_484 = fragment_unnamed_415 * fragment_unnamed_414;
precise float fragment_unnamed_485 = fragment_unnamed_415 * fragment_unnamed_412;
precise float fragment_unnamed_486 = fragment_unnamed_416 * fragment_unnamed_413;
precise float fragment_unnamed_487 = fragment_unnamed_416 * fragment_unnamed_411;
precise float fragment_unnamed_488 = fragment_unnamed_416 * fragment_unnamed_412;
precise float fragment_unnamed_489 = fragment_unnamed_417 * fragment_unnamed_413;
precise float fragment_unnamed_490 = fragment_unnamed_417 * fragment_unnamed_414;
precise float fragment_unnamed_491 = fragment_unnamed_417 * fragment_unnamed_412;
precise float fragment_unnamed_505 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x * fragment_unnamed_484;
float fragment_unnamed_541 = mad(fragment_unnamed_489, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_488, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_487, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_486, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_443)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_485, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_483, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_437), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_442)), fragment_input_4.z).xxxx.x, fragment_unnamed_505))))));
fragment_unnamed_339 = mad(fragment_unnamed_491, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_438), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_490, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_351, fragment_uniform_buffer_2[28u].x, fragment_unnamed_436), mad(fragment_unnamed_352, fragment_uniform_buffer_2[28u].y, fragment_unnamed_444)), fragment_input_4.z).xxxx.x, fragment_unnamed_541));
}
else
{
float fragment_unnamed_566 = floor(mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, 0.5f));
float fragment_unnamed_567 = floor(mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, 0.5f));
precise float fragment_unnamed_576 = (-0.0f) - fragment_unnamed_566;
precise float fragment_unnamed_577 = (-0.0f) - fragment_unnamed_567;
float fragment_unnamed_578 = mad(fragment_input_4.x, fragment_uniform_buffer_2[28u].z, fragment_unnamed_576);
float fragment_unnamed_579 = mad(fragment_input_4.y, fragment_uniform_buffer_2[28u].w, fragment_unnamed_577);
precise float fragment_unnamed_580 = fragment_unnamed_578 + 0.5f;
precise float fragment_unnamed_581 = fragment_unnamed_578 + 1.0f;
precise float fragment_unnamed_582 = fragment_unnamed_579 + 0.5f;
precise float fragment_unnamed_583 = fragment_unnamed_579 + 1.0f;
precise float fragment_unnamed_584 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_585 = fragment_unnamed_580 * fragment_unnamed_580;
precise float fragment_unnamed_586 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_587 = fragment_unnamed_582 * fragment_unnamed_582;
precise float fragment_unnamed_588 = fragment_unnamed_585 * 0.040816001594066619873046875f;
precise float fragment_unnamed_590 = fragment_unnamed_587 * 0.040816001594066619873046875f;
precise float fragment_unnamed_591 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_592 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_595 = (-0.0f) - fragment_unnamed_578;
precise float fragment_unnamed_596 = (-0.0f) - fragment_unnamed_579;
precise float fragment_unnamed_597 = fragment_unnamed_595 + 1.0f;
precise float fragment_unnamed_598 = fragment_unnamed_596 + 1.0f;
float fragment_unnamed_599 = min(fragment_unnamed_578, 0.0f);
float fragment_unnamed_600 = min(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_601 = (-0.0f) - fragment_unnamed_599;
precise float fragment_unnamed_602 = (-0.0f) - fragment_unnamed_600;
float fragment_unnamed_605 = max(fragment_unnamed_578, 0.0f);
float fragment_unnamed_606 = max(fragment_unnamed_579, 0.0f);
precise float fragment_unnamed_607 = (-0.0f) - fragment_unnamed_605;
precise float fragment_unnamed_608 = (-0.0f) - fragment_unnamed_606;
precise float fragment_unnamed_611 = mad(fragment_unnamed_601, fragment_unnamed_599, fragment_unnamed_597) + 2.0f;
precise float fragment_unnamed_612 = mad(fragment_unnamed_602, fragment_unnamed_600, fragment_unnamed_598) + 2.0f;
precise float fragment_unnamed_613 = mad(fragment_unnamed_607, fragment_unnamed_605, fragment_unnamed_581) + 2.0f;
precise float fragment_unnamed_614 = mad(fragment_unnamed_608, fragment_unnamed_606, fragment_unnamed_583) + 2.0f;
precise float fragment_unnamed_615 = fragment_unnamed_613 * 0.08163200318813323974609375f;
precise float fragment_unnamed_617 = mad(fragment_unnamed_586, 0.5f, fragment_unnamed_592) * 0.08163200318813323974609375f;
precise float fragment_unnamed_618 = mad(fragment_unnamed_584, 0.5f, fragment_unnamed_591) * 0.08163200318813323974609375f;
precise float fragment_unnamed_619 = fragment_unnamed_614 * 0.08163200318813323974609375f;
precise float fragment_unnamed_620 = fragment_unnamed_611 * 0.08163200318813323974609375f;
precise float fragment_unnamed_621 = fragment_unnamed_612 * 0.08163200318813323974609375f;
float fragment_unnamed_626 = mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_627 = mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_628 = fragment_unnamed_626 + fragment_unnamed_618;
precise float fragment_unnamed_629 = fragment_unnamed_620 + mad(fragment_unnamed_578, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_630 = fragment_unnamed_627 + fragment_unnamed_615;
precise float fragment_unnamed_631 = fragment_unnamed_588 + mad(fragment_unnamed_578, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_634 = mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.08163200318813323974609375f);
float fragment_unnamed_635 = mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_636 = fragment_unnamed_634 + fragment_unnamed_617;
precise float fragment_unnamed_637 = fragment_unnamed_621 + mad(fragment_unnamed_579, -0.08163200318813323974609375f, 0.1632640063762664794921875f);
precise float fragment_unnamed_638 = fragment_unnamed_635 + fragment_unnamed_619;
precise float fragment_unnamed_639 = fragment_unnamed_590 + mad(fragment_unnamed_579, 0.08163200318813323974609375f, 0.08163200318813323974609375f);
precise float fragment_unnamed_640 = fragment_unnamed_626 / fragment_unnamed_628;
precise float fragment_unnamed_641 = fragment_unnamed_620 / fragment_unnamed_629;
precise float fragment_unnamed_642 = fragment_unnamed_627 / fragment_unnamed_630;
precise float fragment_unnamed_643 = fragment_unnamed_588 / fragment_unnamed_631;
precise float fragment_unnamed_644 = fragment_unnamed_640 + (-3.5f);
precise float fragment_unnamed_646 = fragment_unnamed_641 + (-1.5f);
precise float fragment_unnamed_648 = fragment_unnamed_642 + 0.5f;
precise float fragment_unnamed_649 = fragment_unnamed_643 + 2.5f;
precise float fragment_unnamed_651 = fragment_unnamed_634 / fragment_unnamed_636;
precise float fragment_unnamed_652 = fragment_unnamed_621 / fragment_unnamed_637;
precise float fragment_unnamed_653 = fragment_unnamed_635 / fragment_unnamed_638;
precise float fragment_unnamed_654 = fragment_unnamed_590 / fragment_unnamed_639;
precise float fragment_unnamed_655 = fragment_unnamed_651 + (-3.5f);
precise float fragment_unnamed_656 = fragment_unnamed_652 + (-1.5f);
precise float fragment_unnamed_657 = fragment_unnamed_653 + 0.5f;
precise float fragment_unnamed_658 = fragment_unnamed_654 + 2.5f;
precise float fragment_unnamed_662 = fragment_unnamed_649 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_663 = fragment_unnamed_644 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_664 = fragment_unnamed_646 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_665 = fragment_unnamed_648 * fragment_uniform_buffer_2[28u].x;
precise float fragment_unnamed_669 = fragment_unnamed_655 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_670 = fragment_unnamed_658 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_671 = fragment_unnamed_656 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_672 = fragment_unnamed_657 * fragment_uniform_buffer_2[28u].y;
precise float fragment_unnamed_749 = fragment_unnamed_636 * fragment_unnamed_628;
precise float fragment_unnamed_750 = fragment_unnamed_636 * fragment_unnamed_629;
precise float fragment_unnamed_751 = fragment_unnamed_636 * fragment_unnamed_630;
precise float fragment_unnamed_752 = fragment_unnamed_636 * fragment_unnamed_631;
precise float fragment_unnamed_753 = fragment_unnamed_637 * fragment_unnamed_628;
precise float fragment_unnamed_754 = fragment_unnamed_637 * fragment_unnamed_629;
precise float fragment_unnamed_755 = fragment_unnamed_637 * fragment_unnamed_630;
precise float fragment_unnamed_756 = fragment_unnamed_637 * fragment_unnamed_631;
precise float fragment_unnamed_757 = fragment_unnamed_638 * fragment_unnamed_628;
precise float fragment_unnamed_758 = fragment_unnamed_638 * fragment_unnamed_629;
precise float fragment_unnamed_759 = fragment_unnamed_638 * fragment_unnamed_630;
precise float fragment_unnamed_760 = fragment_unnamed_638 * fragment_unnamed_631;
precise float fragment_unnamed_761 = fragment_unnamed_639 * fragment_unnamed_628;
precise float fragment_unnamed_762 = fragment_unnamed_639 * fragment_unnamed_629;
precise float fragment_unnamed_763 = fragment_unnamed_639 * fragment_unnamed_630;
precise float fragment_unnamed_764 = fragment_unnamed_639 * fragment_unnamed_631;
precise float fragment_unnamed_778 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x * fragment_unnamed_750;
float fragment_unnamed_814 = mad(fragment_unnamed_755, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_754, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_753, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_752, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_751, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_749, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_669)), fragment_input_4.z).xxxx.x, fragment_unnamed_778))))));
float fragment_unnamed_856 = mad(fragment_unnamed_761, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_760, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_759, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_758, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_757, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_663), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_672)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_756, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_671)), fragment_input_4.z).xxxx.x, fragment_unnamed_814))))));
fragment_unnamed_339 = mad(fragment_unnamed_764, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_662), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_763, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_665), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, mad(fragment_unnamed_762, _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(mad(fragment_unnamed_566, fragment_uniform_buffer_2[28u].x, fragment_unnamed_664), mad(fragment_unnamed_567, fragment_uniform_buffer_2[28u].y, fragment_unnamed_670)), fragment_input_4.z).xxxx.x, fragment_unnamed_856)));
}
fragment_unnamed_255 = fragment_unnamed_339;
}
fragment_unnamed_254 = fragment_unnamed_255;
}
else
{
fragment_unnamed_254 = _MainLightShadowmapTexture.SampleCmpLevelZero(S0, float2(fragment_input_4.x, fragment_input_4.y), fragment_input_4.z).xxxx.x;
}
precise float fragment_unnamed_259 = (-0.0f) - fragment_uniform_buffer_2[27u].x;
precise float fragment_unnamed_260 = fragment_unnamed_259 + 1.0f;
float fragment_unnamed_278 = asfloat(((((fragment_input_4.z >= 1.0f) ? 4294967295u : 0u) | ((0.0f >= fragment_input_4.z) ? 4294967295u : 0u)) != 0u) ? 1065353216u : asuint(mad(fragment_unnamed_254, fragment_uniform_buffer_2[27u].x, fragment_unnamed_260)));
float4 fragment_unnamed_298 = _MainTex.SampleBias(sampler_MainTex, float2(fragment_input_0.x, fragment_input_0.y), fragment_uniform_buffer_0[4u].x);
precise float fragment_unnamed_309 = fragment_unnamed_298.x * fragment_input_2.x;
precise float fragment_unnamed_310 = fragment_unnamed_298.y * fragment_input_2.y;
precise float fragment_unnamed_311 = fragment_unnamed_298.z * fragment_input_2.z;
precise float fragment_unnamed_312 = mad(fragment_input_3.x, fragment_unnamed_278, fragment_unnamed_163) * fragment_unnamed_309;
precise float fragment_unnamed_313 = mad(fragment_input_3.y, fragment_unnamed_278, fragment_unnamed_164) * fragment_unnamed_310;
precise float fragment_unnamed_314 = mad(fragment_input_3.z, fragment_unnamed_278, fragment_unnamed_165) * fragment_unnamed_311;
fragment_output_3.x = fragment_unnamed_312;
fragment_output_3.y = fragment_unnamed_313;
fragment_output_3.z = fragment_unnamed_314;
fragment_output_0.x = 0.0f;
fragment_output_0.y = 0.0f;
fragment_output_0.z = 0.0f;
fragment_output_0.w = 0.0f;
fragment_output_1.x = 0.0f;
fragment_output_1.y = 0.0f;
fragment_output_1.z = 0.0f;
fragment_output_1.w = 1.0f;
fragment_output_2.x = fragment_input_5.x;
fragment_output_2.y = fragment_input_5.y;
fragment_output_2.z = fragment_input_5.z;
fragment_output_2.w = 0.0f;
fragment_output_3.w = 1.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_uniform_buffer_0[4] = float4(_GlobalMipBias[0], _GlobalMipBias[1], fragment_uniform_buffer_0[4][2], fragment_uniform_buffer_0[4][3]);
fragment_uniform_buffer_1[27] = float4(unity_SHAr[0], unity_SHAr[1], unity_SHAr[2], unity_SHAr[3]);
fragment_uniform_buffer_1[28] = float4(unity_SHAg[0], unity_SHAg[1], unity_SHAg[2], unity_SHAg[3]);
fragment_uniform_buffer_1[29] = float4(unity_SHAb[0], unity_SHAb[1], unity_SHAb[2], unity_SHAb[3]);
fragment_uniform_buffer_1[30] = float4(unity_SHBr[0], unity_SHBr[1], unity_SHBr[2], unity_SHBr[3]);
fragment_uniform_buffer_1[31] = float4(unity_SHBg[0], unity_SHBg[1], unity_SHBg[2], unity_SHBg[3]);
fragment_uniform_buffer_1[32] = float4(unity_SHBb[0], unity_SHBb[1], unity_SHBb[2], unity_SHBb[3]);
fragment_uniform_buffer_1[33] = float4(unity_SHC[0], unity_SHC[1], unity_SHC[2], unity_SHC[3]);
fragment_uniform_buffer_2[25] = float4(_MainLightShadowOffset0[0], _MainLightShadowOffset0[1], _MainLightShadowOffset0[2], _MainLightShadowOffset0[3]);
fragment_uniform_buffer_2[26] = float4(_MainLightShadowOffset1[0], _MainLightShadowOffset1[1], _MainLightShadowOffset1[2], _MainLightShadowOffset1[3]);
fragment_uniform_buffer_2[28] = float4(_MainLightShadowmapSize[0], _MainLightShadowmapSize[1], _MainLightShadowmapSize[2], _MainLightShadowmapSize[3]);
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
fragment_input_4 = stage_input.fragment_input_4;
fragment_input_5 = stage_input.fragment_input_5;
fragment_input_6 = stage_input.fragment_input_6;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
stage_output.fragment_output_1 = fragment_output_1;
stage_output.fragment_output_2 = fragment_output_2;
stage_output.fragment_output_3 = fragment_output_3;
return stage_output;
}
#endif // _MAIN_LIGHT_SHADOWS
#endif // _SHADOWS_SOFT
#endif // !STEREO_INSTANCING_ON
#endif // !_MAIN_LIGHT_SHADOWS_CASCADE
#endif // !_MIXED_LIGHTING_SUBTRACTIVE
// Fallback Shader Code
#ifndef ANY_SHADER_VARIANT_ACTIVE
// https://docs.unity3d.com/Manual/SL-UnityShaderVariables.html
float4x4 unity_MatrixMVP;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
};
struct Vertex_Stage_Output
{
float4 pos : SV_POSITION;
};
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
return output;
}
float4 frag(Vertex_Stage_Output input) : SV_TARGET
{
// Output solid grey color (e.g., 50% grey)
return float4(0.5, 0.5, 0.5, 1.0); // RGBA
}
#endif // !ANY_SHADER_VARIANT_ACTIVE
ENDHLSL
}
Pass
{
Name "DepthOnly"
LOD 100
Tags { "IGNOREPROJECTOR" = "true" "LIGHTMODE" = "DepthOnly" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Opaque" "UniversalMaterialType" = "Unlit" }
ColorMask B
GpuProgramID 190705
HLSLPROGRAM
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
#pragma vertex vert
#pragma fragment frag
#pragma target 4.0
#pragma multi_compile _ STEREO_INSTANCING_ON
#ifndef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4x4 unity_ObjectToWorld;
static float4 vertex_uniform_buffer_0[83];
static float4 vertex_uniform_buffer_1[4];
static float4 gl_Position;
static float4 vertex_input_0;
static float2 vertex_input_1;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : TEXCOORD; // TEXCOORD
};
struct Vertex_Stage_Output
{
float4 gl_Position : SV_Position;
};
void vert_main()
{
precise float vertex_unnamed_37 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_38 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_39 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_40 = vertex_input_0.y * vertex_uniform_buffer_1[1u].w;
precise float vertex_unnamed_74 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_37)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_75 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_38)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_76 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_39)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_77 = mad(vertex_uniform_buffer_1[2u].w, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].w, vertex_input_0.x, vertex_unnamed_40)) + vertex_uniform_buffer_1[3u].w;
precise float vertex_unnamed_85 = vertex_unnamed_75 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_86 = vertex_unnamed_75 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_87 = vertex_unnamed_75 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_88 = vertex_unnamed_75 * vertex_uniform_buffer_0[80u].w;
gl_Position.x = mad(vertex_uniform_buffer_0[82u].x, vertex_unnamed_77, mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_76, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_74, vertex_unnamed_85)));
gl_Position.y = mad(vertex_uniform_buffer_0[82u].y, vertex_unnamed_77, mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_76, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_74, vertex_unnamed_86)));
gl_Position.z = mad(vertex_uniform_buffer_0[82u].z, vertex_unnamed_77, mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_76, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_74, vertex_unnamed_87)));
gl_Position.w = mad(vertex_uniform_buffer_0[82u].w, vertex_unnamed_77, mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_76, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_74, vertex_unnamed_88)));
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
return stage_output;
}
#endif // !STEREO_INSTANCING_ON
#ifdef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_ObjectToWorld;
float4x4 unity_StereoMatrixVP[2];
static float4 vertex_uniform_buffer_0[4];
static float4 vertex_uniform_buffer_1[40];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float2 vertex_input_1;
static uint vertex_output_1;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float2 vertex_input_1 : TEXCOORD; // TEXCOORD
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
uint vertex_output_1 : SV_InstanceID; // SV_InstanceID
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
precise float vertex_unnamed_42 = vertex_input_0.y * vertex_uniform_buffer_0[1u].x;
precise float vertex_unnamed_43 = vertex_input_0.y * vertex_uniform_buffer_0[1u].y;
precise float vertex_unnamed_44 = vertex_input_0.y * vertex_uniform_buffer_0[1u].z;
precise float vertex_unnamed_45 = vertex_input_0.y * vertex_uniform_buffer_0[1u].w;
precise float vertex_unnamed_79 = mad(vertex_uniform_buffer_0[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].x, vertex_input_0.x, vertex_unnamed_42)) + vertex_uniform_buffer_0[3u].x;
precise float vertex_unnamed_80 = mad(vertex_uniform_buffer_0[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].y, vertex_input_0.x, vertex_unnamed_43)) + vertex_uniform_buffer_0[3u].y;
precise float vertex_unnamed_81 = mad(vertex_uniform_buffer_0[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].z, vertex_input_0.x, vertex_unnamed_44)) + vertex_uniform_buffer_0[3u].z;
precise float vertex_unnamed_82 = mad(vertex_uniform_buffer_0[2u].w, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].w, vertex_input_0.x, vertex_unnamed_45)) + vertex_uniform_buffer_0[3u].w;
uint vertex_unnamed_87 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_88 = vertex_unnamed_87 << 2u;
gl_Layer = int(vertex_unnamed_87);
uint vertex_unnamed_89 = vertex_unnamed_88 + 33u;
precise float vertex_unnamed_97 = vertex_unnamed_80 * vertex_uniform_buffer_1[vertex_unnamed_89].x;
precise float vertex_unnamed_98 = vertex_unnamed_80 * vertex_uniform_buffer_1[vertex_unnamed_89].y;
precise float vertex_unnamed_99 = vertex_unnamed_80 * vertex_uniform_buffer_1[vertex_unnamed_89].z;
precise float vertex_unnamed_100 = vertex_unnamed_80 * vertex_uniform_buffer_1[vertex_unnamed_89].w;
uint vertex_unnamed_101 = vertex_unnamed_88 + 32u;
uint vertex_unnamed_113 = vertex_unnamed_88 + 34u;
uint vertex_unnamed_125 = vertex_unnamed_88 + 35u;
gl_Position.x = mad(vertex_uniform_buffer_1[vertex_unnamed_125].x, vertex_unnamed_82, mad(vertex_uniform_buffer_1[vertex_unnamed_113].x, vertex_unnamed_81, mad(vertex_uniform_buffer_1[vertex_unnamed_101].x, vertex_unnamed_79, vertex_unnamed_97)));
gl_Position.y = mad(vertex_uniform_buffer_1[vertex_unnamed_125].y, vertex_unnamed_82, mad(vertex_uniform_buffer_1[vertex_unnamed_113].y, vertex_unnamed_81, mad(vertex_uniform_buffer_1[vertex_unnamed_101].y, vertex_unnamed_79, vertex_unnamed_98)));
gl_Position.z = mad(vertex_uniform_buffer_1[vertex_unnamed_125].z, vertex_unnamed_82, mad(vertex_uniform_buffer_1[vertex_unnamed_113].z, vertex_unnamed_81, mad(vertex_uniform_buffer_1[vertex_unnamed_101].z, vertex_unnamed_79, vertex_unnamed_99)));
gl_Position.w = mad(vertex_uniform_buffer_1[vertex_unnamed_125].w, vertex_unnamed_82, mad(vertex_uniform_buffer_1[vertex_unnamed_113].w, vertex_unnamed_81, mad(vertex_uniform_buffer_1[vertex_unnamed_101].w, vertex_unnamed_79, vertex_unnamed_100)));
vertex_output_1 = uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB);
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_0[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_0[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_0[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_1[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_1[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_1[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_1[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_1[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_1[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_1[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_1 = vertex_output_1;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#ifndef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
static float4 gl_FragCoord;
static float fragment_output_0;
struct Fragment_Stage_Input
{
float4 gl_FragCoord : SV_Position;
};
struct Fragment_Stage_Output
{
float fragment_output_0 : SV_Target0;
};
void frag_main()
{
fragment_output_0 = gl_FragCoord.z;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
gl_FragCoord = stage_input.gl_FragCoord;
gl_FragCoord.w = 1.0 / gl_FragCoord.w;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // !STEREO_INSTANCING_ON
#ifdef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
static float4 gl_FragCoord;
static uint fragment_input_1;
static float fragment_output_0;
struct Fragment_Stage_Input
{
uint fragment_input_1 : SV_InstanceID; // SV_InstanceID
float4 gl_FragCoord : SV_Position;
};
struct Fragment_Stage_Output
{
float fragment_output_0 : SV_Target0;
};
void frag_main()
{
fragment_output_0 = gl_FragCoord.z;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
gl_FragCoord = stage_input.gl_FragCoord;
gl_FragCoord.w = 1.0 / gl_FragCoord.w;
fragment_input_1 = stage_input.fragment_input_1;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
ENDHLSL
}
Pass
{
Name "DepthNormals"
LOD 100
Tags { "IGNOREPROJECTOR" = "true" "LIGHTMODE" = "DepthNormals" "RenderPipeline" = "UniversalPipeline" "RenderType" = "Opaque" "UniversalMaterialType" = "Unlit" }
GpuProgramID 241999
HLSLPROGRAM
// https://docs.unity3d.com/Manual/SL-PragmaDirectives.html
#pragma vertex vert
#pragma fragment frag
#pragma target 4.0
#pragma multi_compile _ STEREO_INSTANCING_ON
#ifndef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_MatrixVP;
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightmapST;
float4 _Splat0_ST;
float4 _Splat1_ST;
float4 _Splat2_ST;
float4 _Splat3_ST;
static float4 vertex_uniform_buffer_0[83];
static float4 vertex_uniform_buffer_1[26];
static float4 vertex_uniform_buffer_2[23];
static float4 gl_Position;
static float4 vertex_input_0;
static float3 vertex_input_1;
static float2 vertex_input_2;
static float4 vertex_output_0;
static float4 vertex_output_1;
static float4 vertex_output_2;
static float3 vertex_output_3;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float3 vertex_input_1 : NORMAL; // NORMAL
float2 vertex_input_2 : TEXCOORD0; // TEXCOORD
};
struct Vertex_Stage_Output
{
float4 vertex_output_0 : TEXCOORD; // TEXCOORD
float4 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float3 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 gl_Position : SV_Position;
};
void vert_main()
{
vertex_output_0.z = mad(vertex_input_2.x, vertex_uniform_buffer_1[25u].x, vertex_uniform_buffer_1[25u].z);
vertex_output_0.w = mad(vertex_input_2.y, vertex_uniform_buffer_1[25u].y, vertex_uniform_buffer_1[25u].w);
vertex_output_0.x = vertex_input_2.x;
vertex_output_0.y = vertex_input_2.y;
vertex_output_1.x = mad(vertex_input_2.x, vertex_uniform_buffer_2[19u].x, vertex_uniform_buffer_2[19u].z);
vertex_output_1.y = mad(vertex_input_2.y, vertex_uniform_buffer_2[19u].y, vertex_uniform_buffer_2[19u].w);
vertex_output_1.z = mad(vertex_input_2.x, vertex_uniform_buffer_2[20u].x, vertex_uniform_buffer_2[20u].z);
vertex_output_1.w = mad(vertex_input_2.y, vertex_uniform_buffer_2[20u].y, vertex_uniform_buffer_2[20u].w);
vertex_output_2.x = mad(vertex_input_2.x, vertex_uniform_buffer_2[21u].x, vertex_uniform_buffer_2[21u].z);
vertex_output_2.y = mad(vertex_input_2.y, vertex_uniform_buffer_2[21u].y, vertex_uniform_buffer_2[21u].w);
vertex_output_2.z = mad(vertex_input_2.x, vertex_uniform_buffer_2[22u].x, vertex_uniform_buffer_2[22u].z);
vertex_output_2.w = mad(vertex_input_2.y, vertex_uniform_buffer_2[22u].y, vertex_uniform_buffer_2[22u].w);
float vertex_unnamed_149 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_1[4u].xyz));
float vertex_unnamed_164 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_1[5u].xyz));
float vertex_unnamed_179 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_1[6u].xyz));
float vertex_unnamed_187 = rsqrt(max(dot(float3(vertex_unnamed_149, vertex_unnamed_164, vertex_unnamed_179), float3(vertex_unnamed_149, vertex_unnamed_164, vertex_unnamed_179)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_188 = vertex_unnamed_187 * vertex_unnamed_149;
precise float vertex_unnamed_189 = vertex_unnamed_187 * vertex_unnamed_164;
precise float vertex_unnamed_190 = vertex_unnamed_187 * vertex_unnamed_179;
vertex_output_3.x = vertex_unnamed_188;
vertex_output_3.y = vertex_unnamed_189;
vertex_output_3.z = vertex_unnamed_190;
precise float vertex_unnamed_201 = vertex_input_0.y * vertex_uniform_buffer_1[1u].x;
precise float vertex_unnamed_202 = vertex_input_0.y * vertex_uniform_buffer_1[1u].y;
precise float vertex_unnamed_203 = vertex_input_0.y * vertex_uniform_buffer_1[1u].z;
precise float vertex_unnamed_229 = mad(vertex_uniform_buffer_1[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].x, vertex_input_0.x, vertex_unnamed_201)) + vertex_uniform_buffer_1[3u].x;
precise float vertex_unnamed_230 = mad(vertex_uniform_buffer_1[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].y, vertex_input_0.x, vertex_unnamed_202)) + vertex_uniform_buffer_1[3u].y;
precise float vertex_unnamed_231 = mad(vertex_uniform_buffer_1[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_1[0u].z, vertex_input_0.x, vertex_unnamed_203)) + vertex_uniform_buffer_1[3u].z;
precise float vertex_unnamed_239 = vertex_unnamed_230 * vertex_uniform_buffer_0[80u].x;
precise float vertex_unnamed_240 = vertex_unnamed_230 * vertex_uniform_buffer_0[80u].y;
precise float vertex_unnamed_241 = vertex_unnamed_230 * vertex_uniform_buffer_0[80u].z;
precise float vertex_unnamed_242 = vertex_unnamed_230 * vertex_uniform_buffer_0[80u].w;
precise float vertex_unnamed_272 = mad(vertex_uniform_buffer_0[81u].x, vertex_unnamed_231, mad(vertex_uniform_buffer_0[79u].x, vertex_unnamed_229, vertex_unnamed_239)) + vertex_uniform_buffer_0[82u].x;
precise float vertex_unnamed_273 = mad(vertex_uniform_buffer_0[81u].y, vertex_unnamed_231, mad(vertex_uniform_buffer_0[79u].y, vertex_unnamed_229, vertex_unnamed_240)) + vertex_uniform_buffer_0[82u].y;
precise float vertex_unnamed_274 = mad(vertex_uniform_buffer_0[81u].z, vertex_unnamed_231, mad(vertex_uniform_buffer_0[79u].z, vertex_unnamed_229, vertex_unnamed_241)) + vertex_uniform_buffer_0[82u].z;
precise float vertex_unnamed_275 = mad(vertex_uniform_buffer_0[81u].w, vertex_unnamed_231, mad(vertex_uniform_buffer_0[79u].w, vertex_unnamed_229, vertex_unnamed_242)) + vertex_uniform_buffer_0[82u].w;
gl_Position.x = vertex_unnamed_272;
gl_Position.y = vertex_unnamed_273;
gl_Position.z = vertex_unnamed_274;
gl_Position.w = vertex_unnamed_275;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[79] = float4(unity_MatrixVP[0][0], unity_MatrixVP[1][0], unity_MatrixVP[2][0], unity_MatrixVP[3][0]);
vertex_uniform_buffer_0[80] = float4(unity_MatrixVP[0][1], unity_MatrixVP[1][1], unity_MatrixVP[2][1], unity_MatrixVP[3][1]);
vertex_uniform_buffer_0[81] = float4(unity_MatrixVP[0][2], unity_MatrixVP[1][2], unity_MatrixVP[2][2], unity_MatrixVP[3][2]);
vertex_uniform_buffer_0[82] = float4(unity_MatrixVP[0][3], unity_MatrixVP[1][3], unity_MatrixVP[2][3], unity_MatrixVP[3][3]);
vertex_uniform_buffer_1[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_1[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_1[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_1[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_1[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_1[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_1[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_1[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_1[25] = float4(unity_LightmapST[0], unity_LightmapST[1], unity_LightmapST[2], unity_LightmapST[3]);
vertex_uniform_buffer_2[19] = float4(_Splat0_ST[0], _Splat0_ST[1], _Splat0_ST[2], _Splat0_ST[3]);
vertex_uniform_buffer_2[20] = float4(_Splat1_ST[0], _Splat1_ST[1], _Splat1_ST[2], _Splat1_ST[3]);
vertex_uniform_buffer_2[21] = float4(_Splat2_ST[0], _Splat2_ST[1], _Splat2_ST[2], _Splat2_ST[3]);
vertex_uniform_buffer_2[22] = float4(_Splat3_ST[0], _Splat3_ST[1], _Splat3_ST[2], _Splat3_ST[3]);
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
return stage_output;
}
#endif // !STEREO_INSTANCING_ON
#ifdef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
float4x4 unity_ObjectToWorld;
float4x4 unity_WorldToObject;
float4 unity_LightmapST;
float4x4 unity_StereoMatrixVP[2];
float4 _Splat0_ST;
float4 _Splat1_ST;
float4 _Splat2_ST;
float4 _Splat3_ST;
static float4 vertex_uniform_buffer_0[26];
static float4 vertex_uniform_buffer_1[40];
static float4 vertex_uniform_buffer_2[23];
static float4 gl_Position;
static uint gl_Layer;
static int gl_InstanceIndex;
static int gl_BaseInstanceARB;
static float4 vertex_input_0;
static float3 vertex_input_1;
static float2 vertex_input_2;
static float4 vertex_output_0;
static float4 vertex_output_1;
static float4 vertex_output_2;
static float3 vertex_output_3;
struct Vertex_Stage_Input
{
float4 vertex_input_0 : POSITION; // POSITION
float3 vertex_input_1 : NORMAL; // NORMAL
float2 vertex_input_2 : TEXCOORD0; // TEXCOORD
uint gl_InstanceIndex : SV_InstanceID;
uint gl_BaseInstanceARB : SV_StartInstanceLocation;
};
struct Vertex_Stage_Output
{
float4 vertex_output_0 : TEXCOORD; // TEXCOORD
float4 vertex_output_1 : TEXCOORD1; // TEXCOORD_1
float4 vertex_output_2 : TEXCOORD2; // TEXCOORD_2
float3 vertex_output_3 : TEXCOORD3; // TEXCOORD_3
float4 gl_Position : SV_Position;
uint gl_Layer : SV_RenderTargetArrayIndex;
};
void vert_main()
{
vertex_output_0.z = mad(vertex_input_2.x, vertex_uniform_buffer_0[25u].x, vertex_uniform_buffer_0[25u].z);
vertex_output_0.w = mad(vertex_input_2.y, vertex_uniform_buffer_0[25u].y, vertex_uniform_buffer_0[25u].w);
vertex_output_0.x = vertex_input_2.x;
vertex_output_0.y = vertex_input_2.y;
vertex_output_1.x = mad(vertex_input_2.x, vertex_uniform_buffer_2[19u].x, vertex_uniform_buffer_2[19u].z);
vertex_output_1.y = mad(vertex_input_2.y, vertex_uniform_buffer_2[19u].y, vertex_uniform_buffer_2[19u].w);
vertex_output_1.z = mad(vertex_input_2.x, vertex_uniform_buffer_2[20u].x, vertex_uniform_buffer_2[20u].z);
vertex_output_1.w = mad(vertex_input_2.y, vertex_uniform_buffer_2[20u].y, vertex_uniform_buffer_2[20u].w);
vertex_output_2.x = mad(vertex_input_2.x, vertex_uniform_buffer_2[21u].x, vertex_uniform_buffer_2[21u].z);
vertex_output_2.y = mad(vertex_input_2.y, vertex_uniform_buffer_2[21u].y, vertex_uniform_buffer_2[21u].w);
vertex_output_2.z = mad(vertex_input_2.x, vertex_uniform_buffer_2[22u].x, vertex_uniform_buffer_2[22u].z);
vertex_output_2.w = mad(vertex_input_2.y, vertex_uniform_buffer_2[22u].y, vertex_uniform_buffer_2[22u].w);
float vertex_unnamed_153 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_0[4u].xyz));
float vertex_unnamed_168 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_0[5u].xyz));
float vertex_unnamed_183 = dot(float3(vertex_input_1.x, vertex_input_1.y, vertex_input_1.z), float3(vertex_uniform_buffer_0[6u].xyz));
float vertex_unnamed_191 = rsqrt(max(dot(float3(vertex_unnamed_153, vertex_unnamed_168, vertex_unnamed_183), float3(vertex_unnamed_153, vertex_unnamed_168, vertex_unnamed_183)), 1.1754943508222875079687365372222e-38f));
precise float vertex_unnamed_192 = vertex_unnamed_191 * vertex_unnamed_153;
precise float vertex_unnamed_193 = vertex_unnamed_191 * vertex_unnamed_168;
precise float vertex_unnamed_194 = vertex_unnamed_191 * vertex_unnamed_183;
vertex_output_3.x = vertex_unnamed_192;
vertex_output_3.y = vertex_unnamed_193;
vertex_output_3.z = vertex_unnamed_194;
precise float vertex_unnamed_205 = vertex_input_0.y * vertex_uniform_buffer_0[1u].x;
precise float vertex_unnamed_206 = vertex_input_0.y * vertex_uniform_buffer_0[1u].y;
precise float vertex_unnamed_207 = vertex_input_0.y * vertex_uniform_buffer_0[1u].z;
precise float vertex_unnamed_233 = mad(vertex_uniform_buffer_0[2u].x, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].x, vertex_input_0.x, vertex_unnamed_205)) + vertex_uniform_buffer_0[3u].x;
precise float vertex_unnamed_234 = mad(vertex_uniform_buffer_0[2u].y, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].y, vertex_input_0.x, vertex_unnamed_206)) + vertex_uniform_buffer_0[3u].y;
precise float vertex_unnamed_235 = mad(vertex_uniform_buffer_0[2u].z, vertex_input_0.z, mad(vertex_uniform_buffer_0[0u].z, vertex_input_0.x, vertex_unnamed_207)) + vertex_uniform_buffer_0[3u].z;
uint vertex_unnamed_240 = (uint(gl_InstanceIndex) - uint(gl_BaseInstanceARB)) & 1u;
uint vertex_unnamed_241 = vertex_unnamed_240 << 2u;
gl_Layer = int(vertex_unnamed_240);
uint vertex_unnamed_242 = vertex_unnamed_241 + 33u;
precise float vertex_unnamed_250 = vertex_unnamed_234 * vertex_uniform_buffer_1[vertex_unnamed_242].x;
precise float vertex_unnamed_251 = vertex_unnamed_234 * vertex_uniform_buffer_1[vertex_unnamed_242].y;
precise float vertex_unnamed_252 = vertex_unnamed_234 * vertex_uniform_buffer_1[vertex_unnamed_242].z;
precise float vertex_unnamed_253 = vertex_unnamed_234 * vertex_uniform_buffer_1[vertex_unnamed_242].w;
uint vertex_unnamed_254 = vertex_unnamed_241 + 32u;
uint vertex_unnamed_266 = vertex_unnamed_241 + 34u;
uint vertex_unnamed_278 = vertex_unnamed_241 + 35u;
precise float vertex_unnamed_286 = mad(vertex_uniform_buffer_1[vertex_unnamed_266].x, vertex_unnamed_235, mad(vertex_uniform_buffer_1[vertex_unnamed_254].x, vertex_unnamed_233, vertex_unnamed_250)) + vertex_uniform_buffer_1[vertex_unnamed_278].x;
precise float vertex_unnamed_287 = mad(vertex_uniform_buffer_1[vertex_unnamed_266].y, vertex_unnamed_235, mad(vertex_uniform_buffer_1[vertex_unnamed_254].y, vertex_unnamed_233, vertex_unnamed_251)) + vertex_uniform_buffer_1[vertex_unnamed_278].y;
precise float vertex_unnamed_288 = mad(vertex_uniform_buffer_1[vertex_unnamed_266].z, vertex_unnamed_235, mad(vertex_uniform_buffer_1[vertex_unnamed_254].z, vertex_unnamed_233, vertex_unnamed_252)) + vertex_uniform_buffer_1[vertex_unnamed_278].z;
precise float vertex_unnamed_289 = mad(vertex_uniform_buffer_1[vertex_unnamed_266].w, vertex_unnamed_235, mad(vertex_uniform_buffer_1[vertex_unnamed_254].w, vertex_unnamed_233, vertex_unnamed_253)) + vertex_uniform_buffer_1[vertex_unnamed_278].w;
gl_Position.x = vertex_unnamed_286;
gl_Position.y = vertex_unnamed_287;
gl_Position.z = vertex_unnamed_288;
gl_Position.w = vertex_unnamed_289;
}
Vertex_Stage_Output vert(Vertex_Stage_Input stage_input)
{
vertex_uniform_buffer_0[0] = float4(unity_ObjectToWorld[0][0], unity_ObjectToWorld[1][0], unity_ObjectToWorld[2][0], unity_ObjectToWorld[3][0]);
vertex_uniform_buffer_0[1] = float4(unity_ObjectToWorld[0][1], unity_ObjectToWorld[1][1], unity_ObjectToWorld[2][1], unity_ObjectToWorld[3][1]);
vertex_uniform_buffer_0[2] = float4(unity_ObjectToWorld[0][2], unity_ObjectToWorld[1][2], unity_ObjectToWorld[2][2], unity_ObjectToWorld[3][2]);
vertex_uniform_buffer_0[3] = float4(unity_ObjectToWorld[0][3], unity_ObjectToWorld[1][3], unity_ObjectToWorld[2][3], unity_ObjectToWorld[3][3]);
vertex_uniform_buffer_0[4] = float4(unity_WorldToObject[0][0], unity_WorldToObject[1][0], unity_WorldToObject[2][0], unity_WorldToObject[3][0]);
vertex_uniform_buffer_0[5] = float4(unity_WorldToObject[0][1], unity_WorldToObject[1][1], unity_WorldToObject[2][1], unity_WorldToObject[3][1]);
vertex_uniform_buffer_0[6] = float4(unity_WorldToObject[0][2], unity_WorldToObject[1][2], unity_WorldToObject[2][2], unity_WorldToObject[3][2]);
vertex_uniform_buffer_0[7] = float4(unity_WorldToObject[0][3], unity_WorldToObject[1][3], unity_WorldToObject[2][3], unity_WorldToObject[3][3]);
vertex_uniform_buffer_0[25] = float4(unity_LightmapST[0], unity_LightmapST[1], unity_LightmapST[2], unity_LightmapST[3]);
vertex_uniform_buffer_1[32] = float4(unity_StereoMatrixVP[0][0][0], unity_StereoMatrixVP[0][1][0], unity_StereoMatrixVP[0][2][0], unity_StereoMatrixVP[0][3][0]);
vertex_uniform_buffer_1[33] = float4(unity_StereoMatrixVP[0][0][1], unity_StereoMatrixVP[0][1][1], unity_StereoMatrixVP[0][2][1], unity_StereoMatrixVP[0][3][1]);
vertex_uniform_buffer_1[34] = float4(unity_StereoMatrixVP[0][0][2], unity_StereoMatrixVP[0][1][2], unity_StereoMatrixVP[0][2][2], unity_StereoMatrixVP[0][3][2]);
vertex_uniform_buffer_1[35] = float4(unity_StereoMatrixVP[0][0][3], unity_StereoMatrixVP[0][1][3], unity_StereoMatrixVP[0][2][3], unity_StereoMatrixVP[0][3][3]);
vertex_uniform_buffer_1[36] = float4(unity_StereoMatrixVP[1][0][0], unity_StereoMatrixVP[1][1][0], unity_StereoMatrixVP[1][2][0], unity_StereoMatrixVP[1][3][0]);
vertex_uniform_buffer_1[37] = float4(unity_StereoMatrixVP[1][0][1], unity_StereoMatrixVP[1][1][1], unity_StereoMatrixVP[1][2][1], unity_StereoMatrixVP[1][3][1]);
vertex_uniform_buffer_1[38] = float4(unity_StereoMatrixVP[1][0][2], unity_StereoMatrixVP[1][1][2], unity_StereoMatrixVP[1][2][2], unity_StereoMatrixVP[1][3][2]);
vertex_uniform_buffer_1[39] = float4(unity_StereoMatrixVP[1][0][3], unity_StereoMatrixVP[1][1][3], unity_StereoMatrixVP[1][2][3], unity_StereoMatrixVP[1][3][3]);
vertex_uniform_buffer_2[19] = float4(_Splat0_ST[0], _Splat0_ST[1], _Splat0_ST[2], _Splat0_ST[3]);
vertex_uniform_buffer_2[20] = float4(_Splat1_ST[0], _Splat1_ST[1], _Splat1_ST[2], _Splat1_ST[3]);
vertex_uniform_buffer_2[21] = float4(_Splat2_ST[0], _Splat2_ST[1], _Splat2_ST[2], _Splat2_ST[3]);
vertex_uniform_buffer_2[22] = float4(_Splat3_ST[0], _Splat3_ST[1], _Splat3_ST[2], _Splat3_ST[3]);
gl_InstanceIndex = int(stage_input.gl_InstanceIndex + stage_input.gl_BaseInstanceARB);
gl_BaseInstanceARB = stage_input.gl_BaseInstanceARB;
vertex_input_0 = stage_input.vertex_input_0;
vertex_input_1 = stage_input.vertex_input_1;
vertex_input_2 = stage_input.vertex_input_2;
vert_main();
Vertex_Stage_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.gl_Layer = gl_Layer;
stage_output.vertex_output_0 = vertex_output_0;
stage_output.vertex_output_1 = vertex_output_1;
stage_output.vertex_output_2 = vertex_output_2;
stage_output.vertex_output_3 = vertex_output_3;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
#ifndef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
static float4 fragment_input_0;
static float4 fragment_input_1;
static float4 fragment_input_2;
static float3 fragment_input_3;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float4 fragment_input_0 : TEXCOORD; // TEXCOORD
float4 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float3 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_38 = rsqrt(dot(float3(fragment_input_3.x, fragment_input_3.y, fragment_input_3.z), float3(fragment_input_3.x, fragment_input_3.y, fragment_input_3.z)));
precise float fragment_unnamed_45 = fragment_unnamed_38 * fragment_input_3.x;
precise float fragment_unnamed_46 = fragment_unnamed_38 * fragment_input_3.y;
precise float fragment_unnamed_47 = fragment_unnamed_38 * fragment_input_3.z;
fragment_output_0.x = fragment_unnamed_45;
fragment_output_0.y = fragment_unnamed_46;
fragment_output_0.z = fragment_unnamed_47;
fragment_output_0.w = 0.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // !STEREO_INSTANCING_ON
#ifdef STEREO_INSTANCING_ON
#define ANY_SHADER_VARIANT_ACTIVE
static float4 fragment_input_0;
static float4 fragment_input_1;
static float4 fragment_input_2;
static float3 fragment_input_3;
static float4 fragment_output_0;
struct Fragment_Stage_Input
{
float4 fragment_input_0 : TEXCOORD; // TEXCOORD
float4 fragment_input_1 : TEXCOORD1; // TEXCOORD_1
float4 fragment_input_2 : TEXCOORD2; // TEXCOORD_2
float3 fragment_input_3 : TEXCOORD3; // TEXCOORD_3
};
struct Fragment_Stage_Output
{
float4 fragment_output_0 : SV_Target0;
};
void frag_main()
{
float fragment_unnamed_40 = rsqrt(dot(float3(fragment_input_3.x, fragment_input_3.y, fragment_input_3.z), float3(fragment_input_3.x, fragment_input_3.y, fragment_input_3.z)));
precise float fragment_unnamed_47 = fragment_unnamed_40 * fragment_input_3.x;
precise float fragment_unnamed_48 = fragment_unnamed_40 * fragment_input_3.y;
precise float fragment_unnamed_49 = fragment_unnamed_40 * fragment_input_3.z;
fragment_output_0.x = fragment_unnamed_47;
fragment_output_0.y = fragment_unnamed_48;
fragment_output_0.z = fragment_unnamed_49;
fragment_output_0.w = 0.0f;
}
Fragment_Stage_Output frag(Fragment_Stage_Input stage_input)
{
fragment_input_0 = stage_input.fragment_input_0;
fragment_input_1 = stage_input.fragment_input_1;
fragment_input_2 = stage_input.fragment_input_2;
fragment_input_3 = stage_input.fragment_input_3;
frag_main();
Fragment_Stage_Output stage_output;
stage_output.fragment_output_0 = fragment_output_0;
return stage_output;
}
#endif // STEREO_INSTANCING_ON
ENDHLSL
}
}
}