u  DIRLIGHTMAP_COMBINEDEVALUATE_SH_VERTEX LIGHTMAP_ON_ADDITIONAL_LIGHTS_ADDITIONAL_LIGHT_SHADOWS_LIGHT_COOKIES_MAIN_LIGHT_SHADOWS_CASCADE_REFLECTION_PROBE_BLENDING _REFLECTION_PROBE_BOX_PROJECTION_SCREEN_SPACE_OCCLUSION _SHADOWS_SOFTQ#ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif uniform vec4 hlslcc_mtx4x4unity_MatrixVP[4]; #if HLSLCC_ENABLE_UNIFORM_BUFFERS UNITY_BINDING(0) uniform UnityPerDraw { #endif UNITY_UNIFORM vec4 hlslcc_mtx4x4unity_ObjectToWorld[4]; UNITY_UNIFORM vec4 hlslcc_mtx4x4unity_WorldToObject[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_LODFade; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_WorldTransformParams; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RenderingLayer; UNITY_UNIFORM mediump vec4 unity_LightData; UNITY_UNIFORM mediump vec4 unity_LightIndices[2]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_ProbesOcclusion; UNITY_UNIFORM mediump vec4 unity_SpecCube0_HDR; UNITY_UNIFORM mediump vec4 unity_SpecCube1_HDR; UNITY_UNIFORM vec4 unity_SpecCube0_BoxMax; UNITY_UNIFORM vec4 unity_SpecCube0_BoxMin; UNITY_UNIFORM vec4 unity_SpecCube0_ProbePosition; UNITY_UNIFORM vec4 unity_SpecCube1_BoxMax; UNITY_UNIFORM vec4 unity_SpecCube1_BoxMin; UNITY_UNIFORM vec4 unity_SpecCube1_ProbePosition; UNITY_UNIFORM vec4 unity_LightmapST; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_DynamicLightmapST; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAr; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAg; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAb; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBr; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBg; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBb; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHC; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RendererBounds_Min; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RendererBounds_Max; UNITY_UNIFORM vec4 Xhlslcc_UnusedXhlslcc_mtx4x4unity_MatrixPreviousM[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXhlslcc_mtx4x4unity_MatrixPreviousMI[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_MotionVectorsParams; #if HLSLCC_ENABLE_UNIFORM_BUFFERS }; #endif in highp vec3 in_POSITION0; in highp vec3 in_NORMAL0; in highp vec4 in_TANGENT0; in highp vec4 in_TEXCOORD0; in highp vec4 in_TEXCOORD1; out highp vec2 vs_INTERP0; out highp vec4 vs_INTERP4; out highp vec4 vs_INTERP5; out highp vec4 vs_INTERP6; out highp vec3 vs_INTERP7; out highp vec3 vs_INTERP8; vec3 u_xlat0; vec4 u_xlat1; float u_xlat6; void main() { u_xlat0.xyz = in_POSITION0.yyy * hlslcc_mtx4x4unity_ObjectToWorld[1].xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_ObjectToWorld[0].xyz * in_POSITION0.xxx + u_xlat0.xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_ObjectToWorld[2].xyz * in_POSITION0.zzz + u_xlat0.xyz; u_xlat0.xyz = u_xlat0.xyz + hlslcc_mtx4x4unity_ObjectToWorld[3].xyz; u_xlat1 = u_xlat0.yyyy * hlslcc_mtx4x4unity_MatrixVP[1]; u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1; u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1; vs_INTERP7.xyz = u_xlat0.xyz; gl_Position = u_xlat1 + hlslcc_mtx4x4unity_MatrixVP[3]; vs_INTERP0.xy = in_TEXCOORD1.xy * unity_LightmapST.xy + unity_LightmapST.zw; u_xlat0.xyz = in_TANGENT0.yyy * hlslcc_mtx4x4unity_ObjectToWorld[1].xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat0.xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat0.xyz; u_xlat6 = dot(u_xlat0.xyz, u_xlat0.xyz); u_xlat6 = max(u_xlat6, 1.17549435e-38); u_xlat6 = inversesqrt(u_xlat6); vs_INTERP4.xyz = vec3(u_xlat6) * u_xlat0.xyz; vs_INTERP4.w = in_TANGENT0.w; vs_INTERP5 = in_TEXCOORD0; vs_INTERP6 = vec4(0.0, 0.0, 0.0, 0.0); u_xlat0.x = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[0].xyz); u_xlat0.y = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[1].xyz); u_xlat0.z = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[2].xyz); u_xlat6 = dot(u_xlat0.xyz, u_xlat0.xyz); u_xlat6 = max(u_xlat6, 1.17549435e-38); u_xlat6 = inversesqrt(u_xlat6); vs_INTERP8.xyz = vec3(u_xlat6) * u_xlat0.xyz; return; } #endif #ifdef FRAGMENT #version 300 es #ifdef GL_EXT_shader_texture_lod #extension GL_EXT_shader_texture_lod : enable #endif precision highp float; precision highp int; #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif vec4 ImmCB_0[4]; uniform mediump vec4 _GlossyEnvironmentCubeMap_HDR; uniform vec4 _ScaledScreenParams; uniform vec2 _GlobalMipBias; uniform vec4 _MainLightPosition; uniform mediump vec4 _MainLightColor; uniform mediump vec4 _AmbientOcclusionParam; uniform mediump vec4 _AdditionalLightsCount; uniform vec4 _AdditionalLightsPosition[16]; uniform mediump vec4 _AdditionalLightsColor[16]; uniform mediump vec4 _AdditionalLightsAttenuation[16]; uniform mediump vec4 _AdditionalLightsSpotDir[16]; uniform vec3 _WorldSpaceCameraPos; uniform vec4 unity_OrthoParams; uniform vec4 hlslcc_mtx4x4unity_MatrixV[4]; uniform vec4 hlslcc_mtx4x4_MainLightWorldToShadow[20]; uniform vec4 _CascadeShadowSplitSpheres0; uniform vec4 _CascadeShadowSplitSpheres1; uniform vec4 _CascadeShadowSplitSpheres2; uniform vec4 _CascadeShadowSplitSpheres3; uniform vec4 _CascadeShadowSplitSphereRadii; uniform vec4 _MainLightShadowOffset0; uniform vec4 _MainLightShadowOffset1; uniform vec4 _MainLightShadowParams; uniform vec4 _MainLightShadowmapSize; uniform vec4 _AdditionalShadowOffset0; uniform vec4 _AdditionalShadowOffset1; uniform vec4 _AdditionalShadowFadeParams; uniform vec4 _AdditionalShadowmapSize; uniform vec4 _AdditionalShadowParams[16]; uniform vec4 hlslcc_mtx4x4_AdditionalLightsWorldToShadow[64]; uniform vec4 hlslcc_mtx4x4_MainLightWorldToLight[4]; uniform float _AdditionalLightsCookieEnableBits; uniform float _MainLightCookieTextureFormat; uniform float _AdditionalLightsCookieAtlasTextureFormat; uniform vec4 hlslcc_mtx4x4_AdditionalLightsWorldToLights[64]; uniform vec4 _AdditionalLightsCookieAtlasUVRects[16]; uniform float _AdditionalLightsLightTypes[16]; #if HLSLCC_ENABLE_UNIFORM_BUFFERS UNITY_BINDING(0) uniform UnityPerDraw { #endif UNITY_UNIFORM vec4 hlslcc_mtx4x4unity_ObjectToWorld[4]; UNITY_UNIFORM vec4 hlslcc_mtx4x4unity_WorldToObject[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_LODFade; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_WorldTransformParams; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RenderingLayer; UNITY_UNIFORM mediump vec4 unity_LightData; UNITY_UNIFORM mediump vec4 unity_LightIndices[2]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_ProbesOcclusion; UNITY_UNIFORM mediump vec4 unity_SpecCube0_HDR; UNITY_UNIFORM mediump vec4 unity_SpecCube1_HDR; UNITY_UNIFORM vec4 unity_SpecCube0_BoxMax; UNITY_UNIFORM vec4 unity_SpecCube0_BoxMin; UNITY_UNIFORM vec4 unity_SpecCube0_ProbePosition; UNITY_UNIFORM vec4 unity_SpecCube1_BoxMax; UNITY_UNIFORM vec4 unity_SpecCube1_BoxMin; UNITY_UNIFORM vec4 unity_SpecCube1_ProbePosition; UNITY_UNIFORM vec4 unity_LightmapST; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_DynamicLightmapST; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAr; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAg; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHAb; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBr; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBg; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHBb; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SHC; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RendererBounds_Min; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_RendererBounds_Max; UNITY_UNIFORM vec4 Xhlslcc_UnusedXhlslcc_mtx4x4unity_MatrixPreviousM[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXhlslcc_mtx4x4unity_MatrixPreviousMI[4]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_MotionVectorsParams; #if HLSLCC_ENABLE_UNIFORM_BUFFERS }; #endif #if HLSLCC_ENABLE_UNIFORM_BUFFERS UNITY_BINDING(1) uniform UnityPerMaterial { #endif UNITY_UNIFORM vec4 Xhlslcc_UnusedX_BaseMap_TexelSize; UNITY_UNIFORM float _Rotation; UNITY_UNIFORM vec2 _Offset; UNITY_UNIFORM vec2 _Tiling; UNITY_UNIFORM vec4 Xhlslcc_UnusedX_MainTex_TexelSize; #if HLSLCC_ENABLE_UNIFORM_BUFFERS }; #endif UNITY_LOCATION(0) uniform mediump samplerCube _GlossyEnvironmentCubeMap; UNITY_LOCATION(1) uniform mediump samplerCube unity_SpecCube0; UNITY_LOCATION(2) uniform mediump samplerCube unity_SpecCube1; UNITY_LOCATION(3) uniform mediump sampler2D unity_Lightmap; UNITY_LOCATION(4) uniform mediump sampler2D unity_LightmapInd; UNITY_LOCATION(5) uniform mediump sampler2D _ScreenSpaceOcclusionTexture; UNITY_LOCATION(6) uniform mediump sampler2D _MainLightShadowmapTexture; UNITY_LOCATION(7) uniform mediump sampler2DShadow hlslcc_zcmp_MainLightShadowmapTexture; UNITY_LOCATION(8) uniform mediump sampler2D _AdditionalLightsShadowmapTexture; UNITY_LOCATION(9) uniform mediump sampler2DShadow hlslcc_zcmp_AdditionalLightsShadowmapTexture; UNITY_LOCATION(10) uniform mediump sampler2D _MainLightCookieTexture; UNITY_LOCATION(11) uniform mediump sampler2D _AdditionalLightsCookieAtlasTexture; UNITY_LOCATION(12) uniform mediump sampler2D _BaseMap; in highp vec2 vs_INTERP0; in highp vec4 vs_INTERP5; in highp vec3 vs_INTERP7; in highp vec3 vs_INTERP8; layout(location = 0) out mediump vec4 SV_Target0; vec2 u_xlat0; mediump vec3 u_xlat16_0; vec3 u_xlat1; vec4 u_xlat2; mediump vec4 u_xlat16_2; bvec4 u_xlatb2; vec4 u_xlat3; mediump vec4 u_xlat16_3; mediump vec3 u_xlat16_4; vec3 u_xlat5; mediump vec4 u_xlat16_5; vec3 u_xlat6; mediump vec4 u_xlat16_6; mediump vec4 u_xlat16_7; mediump vec3 u_xlat16_8; mediump vec3 u_xlat16_9; mediump vec4 u_xlat16_10; mediump vec4 u_xlat16_11; mediump vec4 u_xlat16_12; mediump vec4 u_xlat16_13; mediump vec4 u_xlat16_14; float u_xlat15; mediump vec4 u_xlat16_15; mediump vec4 u_xlat16_16; mediump vec3 u_xlat16_17; mediump vec4 u_xlat16_18; vec3 u_xlat19; mediump float u_xlat16_19; uint u_xlatu19; bvec2 u_xlatb19; vec3 u_xlat20; mediump vec4 u_xlat16_20; bvec3 u_xlatb20; vec3 u_xlat21; int u_xlati21; uint u_xlatu21; bvec3 u_xlatb21; float u_xlat22; vec3 u_xlat23; vec3 u_xlat24; bvec4 u_xlatb24; mediump vec3 u_xlat16_25; vec3 u_xlat26; vec3 u_xlat27; bool u_xlatb28; float u_xlat47; bvec2 u_xlatb47; vec3 u_xlat49; int u_xlati49; float u_xlat50; mediump vec2 u_xlat16_65; mediump vec2 u_xlat16_66; mediump vec2 u_xlat16_67; mediump vec2 u_xlat16_70; mediump vec2 u_xlat16_73; mediump vec2 u_xlat16_74; float u_xlat75; bool u_xlatb75; vec2 u_xlat78; mediump float u_xlat16_78; int u_xlati78; bool u_xlatb78; vec2 u_xlat80; bvec2 u_xlatb80; float u_xlat84; int u_xlati84; uint u_xlatu84; bool u_xlatb84; float u_xlat85; mediump float u_xlat16_85; bool u_xlatb85; mediump float u_xlat16_88; float u_xlat91; mediump float u_xlat16_91; float u_xlat92; mediump float u_xlat16_92; mediump float u_xlat16_93; mediump float u_xlat16_96; float u_xlat103; uint u_xlatu103; bool u_xlatb103; float u_xlat105; float u_xlat106; mediump float u_xlat16_106; int u_xlati106; bool u_xlatb106; float u_xlat107; int u_xlati107; void main() { ImmCB_0[0] = vec4(1.0,0.0,0.0,0.0); ImmCB_0[1] = vec4(0.0,1.0,0.0,0.0); ImmCB_0[2] = vec4(0.0,0.0,1.0,0.0); ImmCB_0[3] = vec4(0.0,0.0,0.0,1.0); vec4 hlslcc_FragCoord = vec4(gl_FragCoord.xyz, 1.0/gl_FragCoord.w); u_xlat0.xy = vs_INTERP5.xy + vec2(-0.5, -0.5); u_xlat1.x = sin(_Rotation); u_xlat2.x = cos(_Rotation); u_xlat3.x = (-u_xlat1.x); u_xlat3.y = u_xlat2.x; u_xlat2.x = dot(u_xlat3.yx, u_xlat0.xy); u_xlat3.z = u_xlat1.x; u_xlat2.y = dot(u_xlat3.zy, u_xlat0.xy); u_xlat0.xy = u_xlat2.xy + vec2(0.5, 0.5); u_xlat0.xy = u_xlat0.xy * _Tiling.xy + vec2(_Offset.x, _Offset.y); u_xlat16_0.xyz = texture(_BaseMap, u_xlat0.xy, _GlobalMipBias.x).xyz; u_xlat84 = dot(vs_INTERP8.xyz, vs_INTERP8.xyz); u_xlat84 = inversesqrt(u_xlat84); u_xlat1.xyz = vec3(u_xlat84) * vs_INTERP8.xyz; u_xlatb84 = unity_OrthoParams.w==0.0; u_xlat2.xyz = (-vs_INTERP7.xyz) + _WorldSpaceCameraPos.xyz; u_xlat85 = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat85 = inversesqrt(u_xlat85); u_xlat2.xyz = vec3(u_xlat85) * u_xlat2.xyz; u_xlat16_4.x = (u_xlatb84) ? u_xlat2.x : hlslcc_mtx4x4unity_MatrixV[0].z; u_xlat16_4.y = (u_xlatb84) ? u_xlat2.y : hlslcc_mtx4x4unity_MatrixV[1].z; u_xlat16_4.z = (u_xlatb84) ? u_xlat2.z : hlslcc_mtx4x4unity_MatrixV[2].z; u_xlat2.xyz = vs_INTERP7.xyz + (-_CascadeShadowSplitSpheres0.xyz); u_xlat3.xyz = vs_INTERP7.xyz + (-_CascadeShadowSplitSpheres1.xyz); u_xlat5.xyz = vs_INTERP7.xyz + (-_CascadeShadowSplitSpheres2.xyz); u_xlat6.xyz = vs_INTERP7.xyz + (-_CascadeShadowSplitSpheres3.xyz); u_xlat2.x = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat2.y = dot(u_xlat3.xyz, u_xlat3.xyz); u_xlat2.z = dot(u_xlat5.xyz, u_xlat5.xyz); u_xlat2.w = dot(u_xlat6.xyz, u_xlat6.xyz); u_xlatb2 = lessThan(u_xlat2, _CascadeShadowSplitSphereRadii); u_xlat16_3.x = (u_xlatb2.x) ? float(1.0) : float(0.0); u_xlat16_3.y = (u_xlatb2.y) ? float(1.0) : float(0.0); u_xlat16_3.z = (u_xlatb2.z) ? float(1.0) : float(0.0); u_xlat16_3.w = (u_xlatb2.w) ? float(1.0) : float(0.0); u_xlat16_7.x = (u_xlatb2.x) ? float(-1.0) : float(-0.0); u_xlat16_7.y = (u_xlatb2.y) ? float(-1.0) : float(-0.0); u_xlat16_7.z = (u_xlatb2.z) ? float(-1.0) : float(-0.0); u_xlat16_7.xyz = u_xlat16_3.yzw + u_xlat16_7.xyz; u_xlat16_3.yzw = max(u_xlat16_7.xyz, vec3(0.0, 0.0, 0.0)); u_xlat16_88 = dot(u_xlat16_3, vec4(4.0, 3.0, 2.0, 1.0)); u_xlat16_88 = (-u_xlat16_88) + 4.0; u_xlatu84 = uint(u_xlat16_88); u_xlati84 = int(int(u_xlatu84) << (2 & int(0x1F))); u_xlat2.xyz = vs_INTERP7.yyy * hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati84 + 1)].xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[u_xlati84].xyz * vs_INTERP7.xxx + u_xlat2.xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati84 + 2)].xyz * vs_INTERP7.zzz + u_xlat2.xyz; u_xlat2.xyz = u_xlat2.xyz + hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati84 + 3)].xyz; u_xlat16_3 = texture(unity_LightmapInd, vs_INTERP0.xy, _GlobalMipBias.x); u_xlat16_5 = texture(unity_Lightmap, vs_INTERP0.xy, _GlobalMipBias.x); u_xlat16_88 = log2(abs(u_xlat16_5.w)); u_xlat16_88 = u_xlat16_88 * 2.20000005; u_xlat16_88 = exp2(u_xlat16_88); u_xlat16_88 = u_xlat16_88 * 34.4932404; u_xlat16_7.xyz = vec3(u_xlat16_88) * u_xlat16_5.xyz; u_xlat16_8.xyz = u_xlat16_3.xyz + vec3(-0.5, -0.5, -0.5); u_xlat84 = dot(u_xlat1.xyz, u_xlat16_8.xyz); u_xlat84 = u_xlat84 + 0.5; u_xlat16_7.xyz = vec3(u_xlat84) * u_xlat16_7.xyz; u_xlat16_88 = max(u_xlat16_3.w, 9.99999975e-05); u_xlat16_7.xyz = u_xlat16_7.xyz / vec3(u_xlat16_88); u_xlat5.xy = vec2(1.0) / vec2(_ScaledScreenParams.xy); u_xlat5.xy = u_xlat5.xy * hlslcc_FragCoord.xy; u_xlat16_8.xyz = u_xlat16_0.xyz * vec3(0.959999979, 0.959999979, 0.959999979); u_xlat16_0.x = texture(_ScreenSpaceOcclusionTexture, u_xlat5.xy, _GlobalMipBias.x).x; u_xlat16_88 = (-_AmbientOcclusionParam.x) + 1.0; u_xlat16_88 = u_xlat16_0.x + u_xlat16_88; u_xlat16_88 = clamp(u_xlat16_88, 0.0, 1.0); u_xlat0.x = u_xlat16_88 + -1.0; u_xlat0.x = _AmbientOcclusionParam.w * u_xlat0.x + 1.0; u_xlatb28 = 0.0<_MainLightShadowParams.y; if(u_xlatb28){ u_xlatb28 = _MainLightShadowParams.y==1.0; if(u_xlatb28){ u_xlat3 = u_xlat2.xyxy + _MainLightShadowOffset0; vec3 txVec0 = vec3(u_xlat3.xy,u_xlat2.z); u_xlat16_5.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec0, 0.0); vec3 txVec1 = vec3(u_xlat3.zw,u_xlat2.z); u_xlat16_5.y = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec1, 0.0); u_xlat3 = u_xlat2.xyxy + _MainLightShadowOffset1; vec3 txVec2 = vec3(u_xlat3.xy,u_xlat2.z); u_xlat16_5.z = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec2, 0.0); vec3 txVec3 = vec3(u_xlat3.zw,u_xlat2.z); u_xlat16_5.w = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec3, 0.0); u_xlat16_91 = dot(u_xlat16_5, vec4(0.25, 0.25, 0.25, 0.25)); } else { u_xlatb28 = _MainLightShadowParams.y==2.0; if(u_xlatb28){ u_xlat16_9.xy = u_xlat2.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_9.xy = floor(u_xlat16_9.xy); u_xlat16_65.xy = u_xlat2.xy * _MainLightShadowmapSize.zw + (-u_xlat16_9.xy); u_xlat16_3 = u_xlat16_65.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_5 = u_xlat16_3.xxzz * u_xlat16_3.xxzz; u_xlat16_10.xy = u_xlat16_5.yw * vec2(0.0799999982, 0.0799999982); u_xlat16_66.xy = u_xlat16_5.xz * vec2(0.5, 0.5) + (-u_xlat16_65.xy); u_xlat16_11.xy = (-u_xlat16_65.xy) + vec2(1.0, 1.0); u_xlat16_67.xy = min(u_xlat16_65.xy, vec2(0.0, 0.0)); u_xlat16_67.xy = (-u_xlat16_67.xy) * u_xlat16_67.xy + u_xlat16_11.xy; u_xlat16_65.xy = max(u_xlat16_65.xy, vec2(0.0, 0.0)); u_xlat16_65.xy = (-u_xlat16_65.xy) * u_xlat16_65.xy + u_xlat16_3.yw; u_xlat16_67.xy = u_xlat16_67.xy + vec2(1.0, 1.0); u_xlat16_65.xy = u_xlat16_65.xy + vec2(1.0, 1.0); u_xlat16_5.xy = u_xlat16_66.xy * vec2(0.159999996, 0.159999996); u_xlat16_6.xy = u_xlat16_11.xy * vec2(0.159999996, 0.159999996); u_xlat16_11.xy = u_xlat16_67.xy * vec2(0.159999996, 0.159999996); u_xlat16_12.xy = u_xlat16_65.xy * vec2(0.159999996, 0.159999996); u_xlat16_65.xy = u_xlat16_3.yw * vec2(0.159999996, 0.159999996); u_xlat16_5.z = u_xlat16_11.x; u_xlat16_5.w = u_xlat16_65.x; u_xlat16_6.z = u_xlat16_12.x; u_xlat16_6.w = u_xlat16_10.x; u_xlat16_3 = u_xlat16_5.zwxz + u_xlat16_6.zwxz; u_xlat16_11.z = u_xlat16_5.y; u_xlat16_11.w = u_xlat16_65.y; u_xlat16_12.z = u_xlat16_6.y; u_xlat16_12.w = u_xlat16_10.y; u_xlat16_10.xyz = u_xlat16_11.zyw + u_xlat16_12.zyw; u_xlat16_11.xyz = u_xlat16_6.xzw / u_xlat16_3.zwy; u_xlat16_11.xyz = u_xlat16_11.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_12.xyz = u_xlat16_12.zyw / u_xlat16_10.xyz; u_xlat16_12.xyz = u_xlat16_12.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_5.xyz = u_xlat16_11.yxz * _MainLightShadowmapSize.xxx; u_xlat16_6.xyz = u_xlat16_12.xyz * _MainLightShadowmapSize.yyy; u_xlat16_5.w = u_xlat16_6.x; u_xlat16_11 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_5.ywxw; u_xlat16_65.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_5.zw; u_xlat16_6.w = u_xlat16_5.y; u_xlat16_5.yw = u_xlat16_6.yz; u_xlat16_12 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_5.xyzy; u_xlat16_6 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.wywz; u_xlat16_5 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_5.xwzw; u_xlat16_13 = u_xlat16_3.zwyz * u_xlat16_10.xxxy; u_xlat16_14 = u_xlat16_3 * u_xlat16_10.yyzz; u_xlat16_92 = u_xlat16_3.y * u_xlat16_10.z; vec3 txVec4 = vec3(u_xlat16_11.xy,u_xlat2.z); u_xlat16_85 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec4, 0.0); vec3 txVec5 = vec3(u_xlat16_11.zw,u_xlat2.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec5, 0.0); u_xlat15 = u_xlat16_13.y * u_xlat16_15.x; u_xlat85 = u_xlat16_13.x * u_xlat16_85 + u_xlat15; vec3 txVec6 = vec3(u_xlat16_65.xy,u_xlat2.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec6, 0.0); u_xlat85 = u_xlat16_13.z * u_xlat16_15.x + u_xlat85; vec3 txVec7 = vec3(u_xlat16_6.xy,u_xlat2.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec7, 0.0); u_xlat85 = u_xlat16_13.w * u_xlat16_15.x + u_xlat85; vec3 txVec8 = vec3(u_xlat16_12.xy,u_xlat2.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec8, 0.0); u_xlat85 = u_xlat16_14.x * u_xlat16_15.x + u_xlat85; vec3 txVec9 = vec3(u_xlat16_12.zw,u_xlat2.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec9, 0.0); u_xlat85 = u_xlat16_14.y * u_xlat16_15.x + u_xlat85; vec3 txVec10 = vec3(u_xlat16_6.zw,u_xlat2.z); u_xlat16_16.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec10, 0.0); u_xlat85 = u_xlat16_14.z * u_xlat16_16.x + u_xlat85; vec3 txVec11 = vec3(u_xlat16_5.xy,u_xlat2.z); u_xlat16_16.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec11, 0.0); u_xlat85 = u_xlat16_14.w * u_xlat16_16.x + u_xlat85; vec3 txVec12 = vec3(u_xlat16_5.zw,u_xlat2.z); u_xlat16_16.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec12, 0.0); u_xlat91 = u_xlat16_92 * u_xlat16_16.x + u_xlat85; u_xlat16_91 = u_xlat91; } else { u_xlat16_9.xy = u_xlat2.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_9.xy = floor(u_xlat16_9.xy); u_xlat16_65.xy = u_xlat2.xy * _MainLightShadowmapSize.zw + (-u_xlat16_9.xy); u_xlat16_3 = u_xlat16_65.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_5 = u_xlat16_3.xxzz * u_xlat16_3.xxzz; u_xlat16_6.yw = u_xlat16_5.yw * vec2(0.0408160016, 0.0408160016); u_xlat16_10.xy = u_xlat16_5.xz * vec2(0.5, 0.5) + (-u_xlat16_65.xy); u_xlat16_66.xy = (-u_xlat16_65.xy) + vec2(1.0, 1.0); u_xlat16_11.xy = min(u_xlat16_65.xy, vec2(0.0, 0.0)); u_xlat16_66.xy = (-u_xlat16_11.xy) * u_xlat16_11.xy + u_xlat16_66.xy; u_xlat16_11.xy = max(u_xlat16_65.xy, vec2(0.0, 0.0)); u_xlat16_11.xy = (-u_xlat16_11.xy) * u_xlat16_11.xy + u_xlat16_3.yw; u_xlat16_66.xy = u_xlat16_66.xy + vec2(2.0, 2.0); u_xlat16_11.xy = u_xlat16_11.xy + vec2(2.0, 2.0); u_xlat16_3.z = u_xlat16_11.x * 0.0816320032; u_xlat16_5.xy = u_xlat16_10.yx * vec2(0.0816320032, 0.0816320032); u_xlat16_10.xy = u_xlat16_66.xy * vec2(0.0816320032, 0.0816320032); u_xlat16_5.z = u_xlat16_11.y * 0.0816320032; u_xlat16_3.x = u_xlat16_5.y; u_xlat16_3.yw = u_xlat16_65.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_11.xz = u_xlat16_65.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_11.y = u_xlat16_10.x; u_xlat16_11.w = u_xlat16_6.y; u_xlat16_3 = u_xlat16_3 + u_xlat16_11; u_xlat16_5.yw = u_xlat16_65.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_6.xz = u_xlat16_65.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_6.y = u_xlat16_10.y; u_xlat16_5 = u_xlat16_5 + u_xlat16_6; u_xlat16_10 = u_xlat16_11 / u_xlat16_3; u_xlat16_10 = u_xlat16_10 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_6 = u_xlat16_6 / u_xlat16_5; u_xlat16_6 = u_xlat16_6 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_10 = u_xlat16_10.wxyz * _MainLightShadowmapSize.xxxx; u_xlat16_6 = u_xlat16_6.xwyz * _MainLightShadowmapSize.yyyy; u_xlat16_11.xzw = u_xlat16_10.yzw; u_xlat16_11.y = u_xlat16_6.x; u_xlat16_12 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_11.xyzy; u_xlat16_65.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_11.wy; u_xlat16_10.y = u_xlat16_11.y; u_xlat16_11.y = u_xlat16_6.z; u_xlat16_13 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_11.xyzy; u_xlat16_14.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_11.wy; u_xlat16_10.z = u_xlat16_11.y; u_xlat16_15 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_10.xyxz; u_xlat16_11.y = u_xlat16_6.w; u_xlat16_16 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_11.xyzy; u_xlat16_70.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_11.wy; u_xlat16_10.w = u_xlat16_11.y; u_xlat16_17.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_10.xw; u_xlat16_6.xzw = u_xlat16_11.xzw; u_xlat16_11 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_73.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_6.wy; u_xlat16_6.x = u_xlat16_10.x; u_xlat16_9.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_6.xy; u_xlat16_6 = u_xlat16_3 * u_xlat16_5.xxxx; u_xlat16_10 = u_xlat16_3 * u_xlat16_5.yyyy; u_xlat16_18 = u_xlat16_3 * u_xlat16_5.zzzz; u_xlat16_3 = u_xlat16_3 * u_xlat16_5.wwww; vec3 txVec13 = vec3(u_xlat16_12.xy,u_xlat2.z); u_xlat16_85 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec13, 0.0); vec3 txVec14 = vec3(u_xlat16_12.zw,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec14, 0.0); u_xlat19.x = u_xlat16_6.y * u_xlat16_19; u_xlat85 = u_xlat16_6.x * u_xlat16_85 + u_xlat19.x; vec3 txVec15 = vec3(u_xlat16_65.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec15, 0.0); u_xlat85 = u_xlat16_6.z * u_xlat16_19 + u_xlat85; vec3 txVec16 = vec3(u_xlat16_15.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec16, 0.0); u_xlat85 = u_xlat16_6.w * u_xlat16_19 + u_xlat85; vec3 txVec17 = vec3(u_xlat16_13.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec17, 0.0); u_xlat85 = u_xlat16_10.x * u_xlat16_19 + u_xlat85; vec3 txVec18 = vec3(u_xlat16_13.zw,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec18, 0.0); u_xlat85 = u_xlat16_10.y * u_xlat16_19 + u_xlat85; vec3 txVec19 = vec3(u_xlat16_14.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec19, 0.0); u_xlat85 = u_xlat16_10.z * u_xlat16_19 + u_xlat85; vec3 txVec20 = vec3(u_xlat16_15.zw,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec20, 0.0); u_xlat85 = u_xlat16_10.w * u_xlat16_19 + u_xlat85; vec3 txVec21 = vec3(u_xlat16_16.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec21, 0.0); u_xlat85 = u_xlat16_18.x * u_xlat16_19 + u_xlat85; vec3 txVec22 = vec3(u_xlat16_16.zw,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec22, 0.0); u_xlat85 = u_xlat16_18.y * u_xlat16_19 + u_xlat85; vec3 txVec23 = vec3(u_xlat16_70.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec23, 0.0); u_xlat85 = u_xlat16_18.z * u_xlat16_19 + u_xlat85; vec3 txVec24 = vec3(u_xlat16_17.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec24, 0.0); u_xlat85 = u_xlat16_18.w * u_xlat16_19 + u_xlat85; vec3 txVec25 = vec3(u_xlat16_11.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec25, 0.0); u_xlat85 = u_xlat16_3.x * u_xlat16_19 + u_xlat85; vec3 txVec26 = vec3(u_xlat16_11.zw,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec26, 0.0); u_xlat85 = u_xlat16_3.y * u_xlat16_19 + u_xlat85; vec3 txVec27 = vec3(u_xlat16_73.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec27, 0.0); u_xlat85 = u_xlat16_3.z * u_xlat16_19 + u_xlat85; vec3 txVec28 = vec3(u_xlat16_9.xy,u_xlat2.z); u_xlat16_19 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec28, 0.0); u_xlat91 = u_xlat16_3.w * u_xlat16_19 + u_xlat85; u_xlat16_91 = u_xlat91; } } } else { vec3 txVec29 = vec3(u_xlat2.xy,u_xlat2.z); u_xlat16_91 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec29, 0.0); u_xlat16_91 = u_xlat16_91; } u_xlat16_92 = (-_MainLightShadowParams.x) + 1.0; u_xlat16_92 = u_xlat16_91 * _MainLightShadowParams.x + u_xlat16_92; u_xlatb85 = 0.0>=u_xlat2.z; u_xlatb19.x = u_xlat2.z>=1.0; u_xlatb85 = u_xlatb85 || u_xlatb19.x; u_xlat16_92 = (u_xlatb85) ? 1.0 : u_xlat16_92; u_xlat19.xyz = vs_INTERP7.xyz + (-_WorldSpaceCameraPos.xyz); u_xlat85 = dot(u_xlat19.xyz, u_xlat19.xyz); u_xlat19.x = u_xlat85 * _MainLightShadowParams.z + _MainLightShadowParams.w; u_xlat19.x = clamp(u_xlat19.x, 0.0, 1.0); u_xlat16_9.x = (-u_xlat16_92) + 1.0; u_xlat16_92 = u_xlat19.x * u_xlat16_9.x + u_xlat16_92; u_xlatb19.x = _MainLightCookieTextureFormat!=-1.0; if(u_xlatb19.x){ u_xlat19.xy = vs_INTERP7.yy * hlslcc_mtx4x4_MainLightWorldToLight[1].xy; u_xlat19.xy = hlslcc_mtx4x4_MainLightWorldToLight[0].xy * vs_INTERP7.xx + u_xlat19.xy; u_xlat19.xy = hlslcc_mtx4x4_MainLightWorldToLight[2].xy * vs_INTERP7.zz + u_xlat19.xy; u_xlat19.xy = u_xlat19.xy + hlslcc_mtx4x4_MainLightWorldToLight[3].xy; u_xlat19.xy = u_xlat19.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat16_2 = texture(_MainLightCookieTexture, u_xlat19.xy, _GlobalMipBias.x); u_xlatb19.xy = equal(vec4(vec4(_MainLightCookieTextureFormat, _MainLightCookieTextureFormat, _MainLightCookieTextureFormat, _MainLightCookieTextureFormat)), vec4(0.0, 1.0, 0.0, 0.0)).xy; u_xlat16_9.x = (u_xlatb19.y) ? u_xlat16_2.w : u_xlat16_2.x; u_xlat16_9.xyz = (u_xlatb19.x) ? u_xlat16_2.xyz : u_xlat16_9.xxx; } else { u_xlat16_9.x = float(1.0); u_xlat16_9.y = float(1.0); u_xlat16_9.z = float(1.0); } u_xlat16_9.xyz = u_xlat16_9.xyz * _MainLightColor.xyz; u_xlat16_9.xyz = u_xlat0.xxx * u_xlat16_9.xyz; u_xlat16_93 = dot((-u_xlat16_4.xyz), u_xlat1.xyz); u_xlat16_93 = u_xlat16_93 + u_xlat16_93; u_xlat16_12.xyz = u_xlat1.xyz * (-vec3(u_xlat16_93)) + (-u_xlat16_4.xyz); u_xlat16_93 = dot(u_xlat1.xyz, u_xlat16_4.xyz); u_xlat16_93 = clamp(u_xlat16_93, 0.0, 1.0); u_xlat16_93 = (-u_xlat16_93) + 1.0; u_xlat16_93 = u_xlat16_93 * u_xlat16_93; u_xlat16_93 = u_xlat16_93 * u_xlat16_93; u_xlat19.xyz = unity_SpecCube0_BoxMax.xyz + (-unity_SpecCube0_BoxMin.xyz); u_xlat16_96 = dot(u_xlat19.xyz, u_xlat19.xyz); u_xlat19.xyz = unity_SpecCube1_BoxMax.xyz + (-unity_SpecCube1_BoxMin.xyz); u_xlat16_13.x = dot(u_xlat19.xyz, u_xlat19.xyz); u_xlat16_96 = u_xlat16_96 + (-u_xlat16_13.x); u_xlatb19.x = 0.0> (2u & uint(0x1F))); u_xlati49 = int(uint(u_xlatu_loop_1 & 3u)); u_xlat21.x = dot(unity_LightIndices[int(u_xlatu21)], ImmCB_0[u_xlati49]); u_xlati21 = int(u_xlat21.x); u_xlat49.xyz = (-vs_INTERP7.xyz) * _AdditionalLightsPosition[u_xlati21].www + _AdditionalLightsPosition[u_xlati21].xyz; u_xlat22 = dot(u_xlat49.xyz, u_xlat49.xyz); u_xlat22 = max(u_xlat22, 6.10351562e-05); u_xlat50 = inversesqrt(u_xlat22); u_xlat23.xyz = u_xlat49.xyz * vec3(u_xlat50); u_xlat78.x = float(1.0) / float(u_xlat22); u_xlat22 = u_xlat22 * _AdditionalLightsAttenuation[u_xlati21].x; u_xlat16_92 = (-u_xlat22) * u_xlat22 + 1.0; u_xlat16_92 = max(u_xlat16_92, 0.0); u_xlat16_92 = u_xlat16_92 * u_xlat16_92; u_xlat22 = u_xlat16_92 * u_xlat78.x; u_xlat16_92 = dot(_AdditionalLightsSpotDir[u_xlati21].xyz, u_xlat23.xyz); u_xlat16_92 = u_xlat16_92 * _AdditionalLightsAttenuation[u_xlati21].z + _AdditionalLightsAttenuation[u_xlati21].w; u_xlat16_92 = clamp(u_xlat16_92, 0.0, 1.0); u_xlat16_92 = u_xlat16_92 * u_xlat16_92; u_xlat22 = u_xlat16_92 * u_xlat22; u_xlati78 = int(_AdditionalShadowParams[u_xlati21].w); u_xlatb106 = u_xlati78>=0; if(u_xlatb106){ u_xlatb106 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(_AdditionalShadowParams[u_xlati21].z); if(u_xlatb106){ u_xlatb24.xyz = greaterThanEqual(abs(u_xlat23.zzyz), abs(u_xlat23.xyxx)).xyz; u_xlatb106 = u_xlatb24.y && u_xlatb24.x; u_xlatb24.xyw = lessThan((-u_xlat23.zyzx), vec4(0.0, 0.0, 0.0, 0.0)).xyw; u_xlat24.x = (u_xlatb24.x) ? float(5.0) : float(4.0); u_xlat24.y = (u_xlatb24.y) ? float(3.0) : float(2.0); u_xlat107 = u_xlatb24.w ? 1.0 : float(0.0); u_xlat107 = (u_xlatb24.z) ? u_xlat24.y : u_xlat107; u_xlat106 = (u_xlatb106) ? u_xlat24.x : u_xlat107; u_xlat107 = trunc(_AdditionalShadowParams[u_xlati21].w); u_xlat106 = u_xlat106 + u_xlat107; u_xlati78 = int(u_xlat106); } u_xlati78 = int(u_xlati78 << (2 & int(0x1F))); u_xlat2 = vs_INTERP7.yyyy * hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati78 + 1)]; u_xlat2 = hlslcc_mtx4x4_AdditionalLightsWorldToShadow[u_xlati78] * vs_INTERP7.xxxx + u_xlat2; u_xlat2 = hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati78 + 2)] * vs_INTERP7.zzzz + u_xlat2; u_xlat2 = u_xlat2 + hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati78 + 3)]; u_xlat24.xyz = u_xlat2.xyz / u_xlat2.www; u_xlatb78 = 0.0<_AdditionalShadowParams[u_xlati21].y; if(u_xlatb78){ u_xlatb78 = 1.0==_AdditionalShadowParams[u_xlati21].y; if(u_xlatb78){ u_xlat2 = u_xlat24.xyxy + _AdditionalShadowOffset0; vec3 txVec30 = vec3(u_xlat2.xy,u_xlat24.z); u_xlat16_3.x = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec30, 0.0); vec3 txVec31 = vec3(u_xlat2.zw,u_xlat24.z); u_xlat16_3.y = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec31, 0.0); u_xlat2 = u_xlat24.xyxy + _AdditionalShadowOffset1; vec3 txVec32 = vec3(u_xlat2.xy,u_xlat24.z); u_xlat16_3.z = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec32, 0.0); vec3 txVec33 = vec3(u_xlat2.zw,u_xlat24.z); u_xlat16_3.w = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec33, 0.0); u_xlat16_92 = dot(u_xlat16_3, vec4(0.25, 0.25, 0.25, 0.25)); } else { u_xlatb78 = 2.0==_AdditionalShadowParams[u_xlati21].y; if(u_xlatb78){ u_xlat16_14.xy = u_xlat24.xy * _AdditionalShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_14.xy = floor(u_xlat16_14.xy); u_xlat16_70.xy = u_xlat24.xy * _AdditionalShadowmapSize.zw + (-u_xlat16_14.xy); u_xlat16_2 = u_xlat16_70.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_3 = u_xlat16_2.xxzz * u_xlat16_2.xxzz; u_xlat16_17.xy = u_xlat16_3.yw * vec2(0.0799999982, 0.0799999982); u_xlat16_73.xy = u_xlat16_3.xz * vec2(0.5, 0.5) + (-u_xlat16_70.xy); u_xlat16_18.xy = (-u_xlat16_70.xy) + vec2(1.0, 1.0); u_xlat16_74.xy = min(u_xlat16_70.xy, vec2(0.0, 0.0)); u_xlat16_74.xy = (-u_xlat16_74.xy) * u_xlat16_74.xy + u_xlat16_18.xy; u_xlat16_70.xy = max(u_xlat16_70.xy, vec2(0.0, 0.0)); u_xlat16_70.xy = (-u_xlat16_70.xy) * u_xlat16_70.xy + u_xlat16_2.yw; u_xlat16_74.xy = u_xlat16_74.xy + vec2(1.0, 1.0); u_xlat16_70.xy = u_xlat16_70.xy + vec2(1.0, 1.0); u_xlat16_3.xy = u_xlat16_73.xy * vec2(0.159999996, 0.159999996); u_xlat16_5.xy = u_xlat16_18.xy * vec2(0.159999996, 0.159999996); u_xlat16_6.xy = u_xlat16_74.xy * vec2(0.159999996, 0.159999996); u_xlat16_7.xy = u_xlat16_70.xy * vec2(0.159999996, 0.159999996); u_xlat16_70.xy = u_xlat16_2.yw * vec2(0.159999996, 0.159999996); u_xlat16_3.z = u_xlat16_6.x; u_xlat16_3.w = u_xlat16_70.x; u_xlat16_5.z = u_xlat16_7.x; u_xlat16_5.w = u_xlat16_17.x; u_xlat16_2 = u_xlat16_3.zwxz + u_xlat16_5.zwxz; u_xlat16_6.z = u_xlat16_3.y; u_xlat16_6.w = u_xlat16_70.y; u_xlat16_7.z = u_xlat16_5.y; u_xlat16_7.w = u_xlat16_17.y; u_xlat16_17.xyz = u_xlat16_6.zyw + u_xlat16_7.zyw; u_xlat16_18.xyz = u_xlat16_5.xzw / u_xlat16_2.zwy; u_xlat16_18.xyz = u_xlat16_18.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_25.xyz = u_xlat16_7.zyw / u_xlat16_17.xyz; u_xlat16_25.xyz = u_xlat16_25.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_3.xyz = u_xlat16_18.yxz * _AdditionalShadowmapSize.xxx; u_xlat16_5.xyz = u_xlat16_25.xyz * _AdditionalShadowmapSize.yyy; u_xlat16_3.w = u_xlat16_5.x; u_xlat16_6 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_3.ywxw; u_xlat16_70.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_3.zw; u_xlat16_5.w = u_xlat16_3.y; u_xlat16_3.yw = u_xlat16_5.yz; u_xlat16_7 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_3.xyzy; u_xlat16_5 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_5.wywz; u_xlat16_3 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_3.xwzw; u_xlat16_10 = u_xlat16_2.zwyz * u_xlat16_17.xxxy; u_xlat16_11 = u_xlat16_2 * u_xlat16_17.yyzz; u_xlat16_93 = u_xlat16_2.y * u_xlat16_17.z; vec3 txVec34 = vec3(u_xlat16_6.xy,u_xlat24.z); u_xlat16_78 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec34, 0.0); vec3 txVec35 = vec3(u_xlat16_6.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec35, 0.0); u_xlat106 = u_xlat16_10.y * u_xlat16_106; u_xlat78.x = u_xlat16_10.x * u_xlat16_78 + u_xlat106; vec3 txVec36 = vec3(u_xlat16_70.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec36, 0.0); u_xlat78.x = u_xlat16_10.z * u_xlat16_106 + u_xlat78.x; vec3 txVec37 = vec3(u_xlat16_5.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec37, 0.0); u_xlat78.x = u_xlat16_10.w * u_xlat16_106 + u_xlat78.x; vec3 txVec38 = vec3(u_xlat16_7.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec38, 0.0); u_xlat78.x = u_xlat16_11.x * u_xlat16_106 + u_xlat78.x; vec3 txVec39 = vec3(u_xlat16_7.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec39, 0.0); u_xlat78.x = u_xlat16_11.y * u_xlat16_106 + u_xlat78.x; vec3 txVec40 = vec3(u_xlat16_5.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec40, 0.0); u_xlat78.x = u_xlat16_11.z * u_xlat16_106 + u_xlat78.x; vec3 txVec41 = vec3(u_xlat16_3.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec41, 0.0); u_xlat78.x = u_xlat16_11.w * u_xlat16_106 + u_xlat78.x; vec3 txVec42 = vec3(u_xlat16_3.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec42, 0.0); u_xlat92 = u_xlat16_93 * u_xlat16_106 + u_xlat78.x; u_xlat16_92 = u_xlat92; } else { u_xlat16_14.xy = u_xlat24.xy * _AdditionalShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_14.xy = floor(u_xlat16_14.xy); u_xlat16_70.xy = u_xlat24.xy * _AdditionalShadowmapSize.zw + (-u_xlat16_14.xy); u_xlat16_2 = u_xlat16_70.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_3 = u_xlat16_2.xxzz * u_xlat16_2.xxzz; u_xlat16_5.yw = u_xlat16_3.yw * vec2(0.0408160016, 0.0408160016); u_xlat16_17.xy = u_xlat16_3.xz * vec2(0.5, 0.5) + (-u_xlat16_70.xy); u_xlat16_73.xy = (-u_xlat16_70.xy) + vec2(1.0, 1.0); u_xlat16_18.xy = min(u_xlat16_70.xy, vec2(0.0, 0.0)); u_xlat16_73.xy = (-u_xlat16_18.xy) * u_xlat16_18.xy + u_xlat16_73.xy; u_xlat16_18.xy = max(u_xlat16_70.xy, vec2(0.0, 0.0)); u_xlat16_18.xy = (-u_xlat16_18.xy) * u_xlat16_18.xy + u_xlat16_2.yw; u_xlat16_73.xy = u_xlat16_73.xy + vec2(2.0, 2.0); u_xlat16_18.xy = u_xlat16_18.xy + vec2(2.0, 2.0); u_xlat16_2.z = u_xlat16_18.x * 0.0816320032; u_xlat16_3.xy = u_xlat16_17.yx * vec2(0.0816320032, 0.0816320032); u_xlat16_17.xy = u_xlat16_73.xy * vec2(0.0816320032, 0.0816320032); u_xlat16_3.z = u_xlat16_18.y * 0.0816320032; u_xlat16_2.x = u_xlat16_3.y; u_xlat16_2.yw = u_xlat16_70.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_6.xz = u_xlat16_70.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_6.y = u_xlat16_17.x; u_xlat16_6.w = u_xlat16_5.y; u_xlat16_2 = u_xlat16_2 + u_xlat16_6; u_xlat16_3.yw = u_xlat16_70.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_5.xz = u_xlat16_70.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_5.y = u_xlat16_17.y; u_xlat16_3 = u_xlat16_3 + u_xlat16_5; u_xlat16_6 = u_xlat16_6 / u_xlat16_2; u_xlat16_6 = u_xlat16_6 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_5 = u_xlat16_5 / u_xlat16_3; u_xlat16_5 = u_xlat16_5 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_6 = u_xlat16_6.wxyz * _AdditionalShadowmapSize.xxxx; u_xlat16_5 = u_xlat16_5.xwyz * _AdditionalShadowmapSize.yyyy; u_xlat16_7.xzw = u_xlat16_6.yzw; u_xlat16_7.y = u_xlat16_5.x; u_xlat16_10 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_7.xyzy; u_xlat16_70.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_7.wy; u_xlat16_6.y = u_xlat16_7.y; u_xlat16_7.y = u_xlat16_5.z; u_xlat16_11 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_7.xyzy; u_xlat16_17.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_7.wy; u_xlat16_6.z = u_xlat16_7.y; u_xlat16_15 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_6.xyxz; u_xlat16_7.y = u_xlat16_5.w; u_xlat16_16 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_7.xyzy; u_xlat16_73.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_7.wy; u_xlat16_6.w = u_xlat16_7.y; u_xlat16_18.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_6.xw; u_xlat16_5.xzw = u_xlat16_7.xzw; u_xlat16_7 = u_xlat16_14.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_5.xyzy; u_xlat16_74.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_5.wy; u_xlat16_5.x = u_xlat16_6.x; u_xlat16_14.xy = u_xlat16_14.xy * _AdditionalShadowmapSize.xy + u_xlat16_5.xy; u_xlat16_5 = u_xlat16_2 * u_xlat16_3.xxxx; u_xlat16_6 = u_xlat16_2 * u_xlat16_3.yyyy; u_xlat16_20 = u_xlat16_2 * u_xlat16_3.zzzz; u_xlat16_2 = u_xlat16_2 * u_xlat16_3.wwww; vec3 txVec43 = vec3(u_xlat16_10.xy,u_xlat24.z); u_xlat16_78 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec43, 0.0); vec3 txVec44 = vec3(u_xlat16_10.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec44, 0.0); u_xlat106 = u_xlat16_5.y * u_xlat16_106; u_xlat78.x = u_xlat16_5.x * u_xlat16_78 + u_xlat106; vec3 txVec45 = vec3(u_xlat16_70.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec45, 0.0); u_xlat78.x = u_xlat16_5.z * u_xlat16_106 + u_xlat78.x; vec3 txVec46 = vec3(u_xlat16_15.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec46, 0.0); u_xlat78.x = u_xlat16_5.w * u_xlat16_106 + u_xlat78.x; vec3 txVec47 = vec3(u_xlat16_11.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec47, 0.0); u_xlat78.x = u_xlat16_6.x * u_xlat16_106 + u_xlat78.x; vec3 txVec48 = vec3(u_xlat16_11.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec48, 0.0); u_xlat78.x = u_xlat16_6.y * u_xlat16_106 + u_xlat78.x; vec3 txVec49 = vec3(u_xlat16_17.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec49, 0.0); u_xlat78.x = u_xlat16_6.z * u_xlat16_106 + u_xlat78.x; vec3 txVec50 = vec3(u_xlat16_15.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec50, 0.0); u_xlat78.x = u_xlat16_6.w * u_xlat16_106 + u_xlat78.x; vec3 txVec51 = vec3(u_xlat16_16.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec51, 0.0); u_xlat78.x = u_xlat16_20.x * u_xlat16_106 + u_xlat78.x; vec3 txVec52 = vec3(u_xlat16_16.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec52, 0.0); u_xlat78.x = u_xlat16_20.y * u_xlat16_106 + u_xlat78.x; vec3 txVec53 = vec3(u_xlat16_73.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec53, 0.0); u_xlat78.x = u_xlat16_20.z * u_xlat16_106 + u_xlat78.x; vec3 txVec54 = vec3(u_xlat16_18.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec54, 0.0); u_xlat78.x = u_xlat16_20.w * u_xlat16_106 + u_xlat78.x; vec3 txVec55 = vec3(u_xlat16_7.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec55, 0.0); u_xlat78.x = u_xlat16_2.x * u_xlat16_106 + u_xlat78.x; vec3 txVec56 = vec3(u_xlat16_7.zw,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec56, 0.0); u_xlat78.x = u_xlat16_2.y * u_xlat16_106 + u_xlat78.x; vec3 txVec57 = vec3(u_xlat16_74.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec57, 0.0); u_xlat78.x = u_xlat16_2.z * u_xlat16_106 + u_xlat78.x; vec3 txVec58 = vec3(u_xlat16_14.xy,u_xlat24.z); u_xlat16_106 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec58, 0.0); u_xlat92 = u_xlat16_2.w * u_xlat16_106 + u_xlat78.x; u_xlat16_92 = u_xlat92; } } } else { vec3 txVec59 = vec3(u_xlat24.xy,u_xlat24.z); u_xlat16_92 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec59, 0.0); u_xlat16_92 = u_xlat16_92; } u_xlat16_93 = 1.0 + (-_AdditionalShadowParams[u_xlati21].x); u_xlat16_92 = u_xlat16_92 * _AdditionalShadowParams[u_xlati21].x + u_xlat16_93; u_xlatb78 = 0.0>=u_xlat24.z; u_xlatb106 = u_xlat24.z>=1.0; u_xlatb78 = u_xlatb106 || u_xlatb78; u_xlat16_92 = (u_xlatb78) ? 1.0 : u_xlat16_92; } else { u_xlat16_92 = 1.0; } u_xlat16_93 = (-u_xlat16_92) + 1.0; u_xlat16_92 = u_xlat85 * u_xlat16_93 + u_xlat16_92; u_xlati78 = int(1 << (u_xlati21 & int(0x1F))); u_xlati78 = int(uint(uint(u_xlati78) & uint(floatBitsToUint(_AdditionalLightsCookieEnableBits)))); if(u_xlati78 != 0) { u_xlati78 = int(_AdditionalLightsLightTypes[u_xlati21]); u_xlati106 = (u_xlati78 != 0) ? 0 : 1; u_xlati107 = int(u_xlati21 << (2 & int(0x1F))); if(u_xlati106 != 0) { u_xlat24.xyz = vs_INTERP7.yyy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 1)].xyw; u_xlat24.xyz = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati107].xyw * vs_INTERP7.xxx + u_xlat24.xyz; u_xlat24.xyz = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 2)].xyw * vs_INTERP7.zzz + u_xlat24.xyz; u_xlat24.xyz = u_xlat24.xyz + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 3)].xyw; u_xlat24.xy = u_xlat24.xy / u_xlat24.zz; u_xlat24.xy = u_xlat24.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat24.xy = clamp(u_xlat24.xy, 0.0, 1.0); u_xlat24.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati21].xy * u_xlat24.xy + _AdditionalLightsCookieAtlasUVRects[u_xlati21].zw; } else { u_xlatb78 = u_xlati78==1; u_xlati78 = u_xlatb78 ? 1 : int(0); if(u_xlati78 != 0) { u_xlat78.xy = vs_INTERP7.yy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 1)].xy; u_xlat78.xy = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati107].xy * vs_INTERP7.xx + u_xlat78.xy; u_xlat78.xy = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 2)].xy * vs_INTERP7.zz + u_xlat78.xy; u_xlat78.xy = u_xlat78.xy + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 3)].xy; u_xlat78.xy = u_xlat78.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat78.xy = fract(u_xlat78.xy); u_xlat24.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati21].xy * u_xlat78.xy + _AdditionalLightsCookieAtlasUVRects[u_xlati21].zw; } else { u_xlat2 = vs_INTERP7.yyyy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 1)]; u_xlat2 = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati107] * vs_INTERP7.xxxx + u_xlat2; u_xlat2 = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 2)] * vs_INTERP7.zzzz + u_xlat2; u_xlat2 = u_xlat2 + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati107 + 3)]; u_xlat26.xyz = u_xlat2.xyz / u_xlat2.www; u_xlat78.x = dot(u_xlat26.xyz, u_xlat26.xyz); u_xlat78.x = inversesqrt(u_xlat78.x); u_xlat26.xyz = u_xlat78.xxx * u_xlat26.xyz; u_xlat78.x = dot(abs(u_xlat26.xyz), vec3(1.0, 1.0, 1.0)); u_xlat78.x = max(u_xlat78.x, 9.99999997e-07); u_xlat78.x = float(1.0) / float(u_xlat78.x); u_xlat27.xyz = u_xlat78.xxx * u_xlat26.zxy; u_xlat27.x = (-u_xlat27.x); u_xlat27.x = clamp(u_xlat27.x, 0.0, 1.0); u_xlatb80.xy = greaterThanEqual(u_xlat27.yzyz, vec4(0.0, 0.0, 0.0, 0.0)).xy; u_xlat80.x = (u_xlatb80.x) ? u_xlat27.x : (-u_xlat27.x); u_xlat80.y = (u_xlatb80.y) ? u_xlat27.x : (-u_xlat27.x); u_xlat78.xy = u_xlat26.xy * u_xlat78.xx + u_xlat80.xy; u_xlat78.xy = u_xlat78.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat78.xy = clamp(u_xlat78.xy, 0.0, 1.0); u_xlat24.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati21].xy * u_xlat78.xy + _AdditionalLightsCookieAtlasUVRects[u_xlati21].zw; } } u_xlat16_2 = textureLod(_AdditionalLightsCookieAtlasTexture, u_xlat24.xy, 0.0); u_xlat16_93 = (u_xlatb47.y) ? u_xlat16_2.w : u_xlat16_2.x; u_xlat16_14.xyz = (u_xlatb47.x) ? u_xlat16_2.xyz : vec3(u_xlat16_93); } else { u_xlat16_14.x = float(1.0); u_xlat16_14.y = float(1.0); u_xlat16_14.z = float(1.0); } u_xlat16_14.xyz = u_xlat16_14.xyz * _AdditionalLightsColor[u_xlati21].xyz; u_xlat16_14.xyz = u_xlat0.xxx * u_xlat16_14.xyz; u_xlat21.x = u_xlat16_92 * u_xlat22; u_xlat16_92 = dot(u_xlat1.xyz, u_xlat23.xyz); u_xlat16_92 = clamp(u_xlat16_92, 0.0, 1.0); u_xlat16_92 = u_xlat16_92 * u_xlat21.x; u_xlat16_14.xyz = vec3(u_xlat16_92) * u_xlat16_14.xyz; u_xlat21.xyz = u_xlat49.xyz * vec3(u_xlat50) + u_xlat16_4.xyz; u_xlat105 = dot(u_xlat21.xyz, u_xlat21.xyz); u_xlat105 = max(u_xlat105, 1.17549435e-38); u_xlat105 = inversesqrt(u_xlat105); u_xlat21.xyz = vec3(u_xlat105) * u_xlat21.xyz; u_xlat105 = dot(u_xlat1.xyz, u_xlat21.xyz); u_xlat105 = clamp(u_xlat105, 0.0, 1.0); u_xlat21.x = dot(u_xlat23.xyz, u_xlat21.xyz); u_xlat21.x = clamp(u_xlat21.x, 0.0, 1.0); u_xlat49.x = u_xlat105 * u_xlat105; u_xlat49.x = u_xlat49.x * -0.9375 + 1.00001001; u_xlat16_92 = u_xlat21.x * u_xlat21.x; u_xlat21.x = u_xlat49.x * u_xlat49.x; u_xlat49.x = max(u_xlat16_92, 0.100000001); u_xlat21.x = u_xlat49.x * u_xlat21.x; u_xlat21.x = u_xlat21.x * 3.0; u_xlat21.x = 0.0625 / u_xlat21.x; u_xlat16_92 = u_xlat21.x + -6.10351562e-05; u_xlat16_17.xyz = vec3(u_xlat16_92) * vec3(0.0399999991, 0.0399999991, 0.0399999991) + u_xlat16_8.xyz; u_xlat16_13.xyz = u_xlat16_17.xyz * u_xlat16_14.xyz + u_xlat16_13.xyz; } u_xlat16_4.xyz = u_xlat16_12.xyz * vec3(u_xlat16_88) + u_xlat16_9.xyz; u_xlat16_4.xyz = u_xlat16_13.xyz + u_xlat16_4.xyz; SV_Target0.xyz = min(u_xlat16_4.xyz, vec3(65504.0, 65504.0, 65504.0)); SV_Target0.w = 1.0; return; } #endif 7$Globalsp%_GlossyEnvironmentCubeMap_HDR_ScaledScreenParams_GlobalMipBias _MainLightPosition0_MainLightColor@_AmbientOcclusionParamP_AdditionalLightsCount`_AdditionalLightsPositionp_AdditionalLightsColorp_AdditionalLightsAttenuationp_AdditionalLightsSpotDirp_WorldSpaceCameraPospunity_OrthoParams_CascadeShadowSplitSpheres0_CascadeShadowSplitSpheres1 _CascadeShadowSplitSpheres20_CascadeShadowSplitSpheres3@_CascadeShadowSplitSphereRadiiP_MainLightShadowOffset0`_MainLightShadowOffset1p_MainLightShadowParams_MainLightShadowmapSize_AdditionalShadowOffset0_AdditionalShadowOffset1_AdditionalShadowFadeParams_AdditionalShadowmapSize_AdditionalShadowParams!_AdditionalLightsCookieEnableBits _MainLightCookieTextureFormat$ )_AdditionalLightsCookieAtlasTextureFormat( #_AdditionalLightsCookieAtlasUVRects0_AdditionalLightsLightTypes0 unity_MatrixV_MainLightWorldToShadow_AdditionalLightsWorldToShadow_MainLightWorldToLight _AdditionalLightsWorldToLights0 UnityPerMaterial@ _Rotation_Offset_Tiling UnityPerDraw unity_LightDataunity_LightIndicesunity_SpecCube0_HDRunity_SpecCube1_HDRunity_SpecCube0_BoxMaxunity_SpecCube0_BoxMin unity_SpecCube0_ProbePosition0unity_SpecCube1_BoxMax@unity_SpecCube1_BoxMinPunity_SpecCube1_ProbePosition`unity_LightmapSTpunity_ObjectToWorldunity_WorldToObject@_GlossyEnvironmentCubeMapunity_SpecCube0unity_SpecCube1unity_Lightmapunity_LightmapInd_ScreenSpaceOcclusionTexture_MainLightShadowmapTexture!_AdditionalLightsShadowmapTexture_MainLightCookieTexture #_AdditionalLightsCookieAtlasTexture _BaseMap $GlobalsUnityPerMaterial UnityPerDraw