Du  EVALUATE_SH_VERTEX_ADDITIONAL_LIGHTS_ADDITIONAL_LIGHT_SHADOWS_LIGHT_COOKIES_MAIN_LIGHT_SHADOWS _NORMALMAP_REFLECTION_PROBE_BLENDING _REFLECTION_PROBE_BOX_PROJECTION_SCREEN_SPACE_OCCLUSION _SHADOWS_SOFT#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]; uniform vec4 hlslcc_mtx4x4_MainLightWorldToShadow[20]; #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 unity_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 Xhlslcc_UnusedXunity_LightmapST; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_DynamicLightmapST; UNITY_UNIFORM mediump vec4 unity_SHAr; UNITY_UNIFORM mediump vec4 unity_SHAg; UNITY_UNIFORM mediump vec4 unity_SHAb; UNITY_UNIFORM mediump vec4 unity_SHBr; UNITY_UNIFORM mediump vec4 unity_SHBg; UNITY_UNIFORM mediump vec4 unity_SHBb; UNITY_UNIFORM mediump vec4 unity_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 _BaseMap_ST; UNITY_UNIFORM vec4 Xhlslcc_UnusedX_DetailAlbedoMap_ST; UNITY_UNIFORM mediump vec4 _BaseColor; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedX_SpecColor; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedX_EmissionColor; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_Cutoff; UNITY_UNIFORM mediump float _Smoothness; UNITY_UNIFORM mediump float _Metallic; UNITY_UNIFORM mediump float _BumpScale; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_Parallax; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_OcclusionStrength; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_ClearCoatMask; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_ClearCoatSmoothness; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_DetailAlbedoMapScale; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_DetailNormalMapScale; UNITY_UNIFORM mediump float _Surface; #if HLSLCC_ENABLE_UNIFORM_BUFFERS }; #endif in highp vec4 in_POSITION0; in highp vec3 in_NORMAL0; in highp vec4 in_TANGENT0; in highp vec2 in_TEXCOORD0; out highp vec2 vs_TEXCOORD0; out mediump float vs_TEXCOORD5; out highp vec3 vs_TEXCOORD1; out highp vec3 vs_TEXCOORD2; out mediump vec4 vs_TEXCOORD3; out highp vec4 vs_TEXCOORD6; out mediump vec3 vs_TEXCOORD8; vec4 u_xlat0; vec4 u_xlat1; vec4 u_xlat2; mediump vec4 u_xlat16_2; mediump vec3 u_xlat16_3; mediump vec3 u_xlat16_4; float u_xlat15; bool u_xlatb15; void main() { vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _BaseMap_ST.xy + _BaseMap_ST.zw; 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; vs_TEXCOORD1.xyz = u_xlat0.xyz; u_xlat1.x = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[0].xyz); u_xlat1.y = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[1].xyz); u_xlat1.z = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[2].xyz); u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz); u_xlat15 = max(u_xlat15, 1.17549435e-38); u_xlat15 = inversesqrt(u_xlat15); u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz; vs_TEXCOORD2.xyz = u_xlat1.xyz; u_xlat2.xyz = in_TANGENT0.yyy * hlslcc_mtx4x4unity_ObjectToWorld[1].xyz; u_xlat2.xyz = hlslcc_mtx4x4unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat2.xyz; u_xlat2.xyz = hlslcc_mtx4x4unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat2.xyz; u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat15 = max(u_xlat15, 1.17549435e-38); u_xlat15 = inversesqrt(u_xlat15); u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz; u_xlatb15 = unity_WorldTransformParams.w>=0.0; u_xlat15 = (u_xlatb15) ? 1.0 : -1.0; u_xlat2.w = u_xlat15 * in_TANGENT0.w; vs_TEXCOORD3 = u_xlat2; vs_TEXCOORD5 = 0.0; u_xlat2.xyz = u_xlat0.yyy * hlslcc_mtx4x4_MainLightWorldToShadow[1].xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[0].xyz * u_xlat0.xxx + u_xlat2.xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[2].xyz * u_xlat0.zzz + u_xlat2.xyz; vs_TEXCOORD6.xyz = u_xlat2.xyz + hlslcc_mtx4x4_MainLightWorldToShadow[3].xyz; vs_TEXCOORD6.w = 0.0; u_xlat16_3.x = u_xlat1.y * u_xlat1.y; u_xlat16_3.x = u_xlat1.x * u_xlat1.x + (-u_xlat16_3.x); u_xlat16_2 = u_xlat1.yzzx * u_xlat1.xyzz; u_xlat16_4.x = dot(unity_SHBr, u_xlat16_2); u_xlat16_4.y = dot(unity_SHBg, u_xlat16_2); u_xlat16_4.z = dot(unity_SHBb, u_xlat16_2); u_xlat16_3.xyz = unity_SHC.xyz * u_xlat16_3.xxx + u_xlat16_4.xyz; u_xlat1.w = 1.0; u_xlat16_4.x = dot(unity_SHAr, u_xlat1); u_xlat16_4.y = dot(unity_SHAg, u_xlat1); u_xlat16_4.z = dot(unity_SHAb, u_xlat1); u_xlat16_3.xyz = u_xlat16_3.xyz + u_xlat16_4.xyz; vs_TEXCOORD8.xyz = max(u_xlat16_3.xyz, vec3(0.0, 0.0, 0.0)); u_xlat1 = u_xlat0.yyyy * hlslcc_mtx4x4unity_MatrixVP[1]; u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1; u_xlat0 = hlslcc_mtx4x4unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1; gl_Position = u_xlat0 + hlslcc_mtx4x4unity_MatrixVP[3]; 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 _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 unity_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 Xhlslcc_UnusedXunity_LightmapST; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_DynamicLightmapST; UNITY_UNIFORM mediump vec4 unity_SHAr; UNITY_UNIFORM mediump vec4 unity_SHAg; UNITY_UNIFORM mediump vec4 unity_SHAb; UNITY_UNIFORM mediump vec4 unity_SHBr; UNITY_UNIFORM mediump vec4 unity_SHBg; UNITY_UNIFORM mediump vec4 unity_SHBb; UNITY_UNIFORM mediump vec4 unity_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 _BaseMap_ST; UNITY_UNIFORM vec4 Xhlslcc_UnusedX_DetailAlbedoMap_ST; UNITY_UNIFORM mediump vec4 _BaseColor; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedX_SpecColor; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedX_EmissionColor; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_Cutoff; UNITY_UNIFORM mediump float _Smoothness; UNITY_UNIFORM mediump float _Metallic; UNITY_UNIFORM mediump float _BumpScale; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_Parallax; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_OcclusionStrength; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_ClearCoatMask; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_ClearCoatSmoothness; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_DetailAlbedoMapScale; UNITY_UNIFORM mediump float Xhlslcc_UnusedX_DetailNormalMapScale; UNITY_UNIFORM mediump float _Surface; #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 _BaseMap; UNITY_LOCATION(4) uniform mediump sampler2D _BumpMap; 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; in highp vec2 vs_TEXCOORD0; in highp vec3 vs_TEXCOORD1; in highp vec3 vs_TEXCOORD2; in mediump vec4 vs_TEXCOORD3; in highp vec4 vs_TEXCOORD6; in mediump vec3 vs_TEXCOORD8; layout(location = 0) out mediump vec4 SV_Target0; float u_xlat0; mediump vec4 u_xlat16_0; mediump vec4 u_xlat16_1; vec3 u_xlat2; mediump vec2 u_xlat16_2; bool u_xlatb2; mediump vec3 u_xlat16_3; mediump vec3 u_xlat16_4; vec4 u_xlat5; mediump vec4 u_xlat16_5; vec3 u_xlat6; mediump vec4 u_xlat16_6; mediump vec3 u_xlat16_7; mediump float 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; mediump vec4 u_xlat16_15; mediump vec4 u_xlat16_16; mediump vec4 u_xlat16_17; mediump vec4 u_xlat16_18; mediump vec4 u_xlat16_19; mediump vec4 u_xlat16_20; vec3 u_xlat21; mediump vec4 u_xlat16_21; bool u_xlatb21; vec3 u_xlat22; bvec3 u_xlatb22; vec3 u_xlat23; vec3 u_xlat24; vec4 u_xlat25; int u_xlati25; bvec4 u_xlatb25; mediump vec4 u_xlat16_26; mediump vec4 u_xlat16_27; vec3 u_xlat28; vec3 u_xlat29; vec3 u_xlat30; mediump float u_xlat16_30; bool u_xlatb30; mediump vec3 u_xlat16_34; mediump float u_xlat16_38; mediump vec3 u_xlat16_40; mediump vec2 u_xlat16_41; mediump vec2 u_xlat16_44; vec3 u_xlat51; bvec3 u_xlatb51; vec3 u_xlat55; vec2 u_xlat60; mediump float u_xlat16_60; uint u_xlatu60; bvec2 u_xlatb60; mediump float u_xlat16_63; mediump float u_xlat16_68; mediump vec2 u_xlat16_69; mediump vec2 u_xlat16_70; mediump vec2 u_xlat16_71; mediump vec2 u_xlat16_72; mediump vec2 u_xlat16_73; mediump vec2 u_xlat16_74; mediump vec2 u_xlat16_75; mediump vec2 u_xlat16_78; float u_xlat82; int u_xlati82; float u_xlat90; uint u_xlatu90; bool u_xlatb90; float u_xlat92; int u_xlati92; uint u_xlatu92; bool u_xlatb92; float u_xlat93; mediump float u_xlat16_93; mediump float u_xlat16_97; float u_xlat98; mediump float u_xlat16_98; mediump float u_xlat16_99; mediump float u_xlat16_100; float u_xlat112; float u_xlat113; mediump float u_xlat16_113; int u_xlati113; bool u_xlatb113; float u_xlat114; mediump float u_xlat16_114; int u_xlati114; bool u_xlatb114; float u_xlat115; 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_xlat16_0 = texture(_BaseMap, vs_TEXCOORD0.xy, _GlobalMipBias.x); u_xlat16_1 = u_xlat16_0 * _BaseColor; u_xlat16_2.xy = texture(_BumpMap, vs_TEXCOORD0.xy, _GlobalMipBias.x).yw; u_xlat16_3.xy = u_xlat16_2.yx * vec2(2.0, 2.0) + vec2(-1.0, -1.0); u_xlat16_63 = dot(u_xlat16_3.xy, u_xlat16_3.xy); u_xlat16_63 = min(u_xlat16_63, 1.0); u_xlat16_63 = (-u_xlat16_63) + 1.0; u_xlat16_63 = sqrt(u_xlat16_63); u_xlat16_4.z = max(u_xlat16_63, 1.00000002e-16); u_xlat16_4.xy = u_xlat16_3.xy * vec2(vec2(_BumpScale, _BumpScale)); u_xlatb90 = unity_OrthoParams.w==0.0; u_xlat2.xyz = (-vs_TEXCOORD1.xyz) + _WorldSpaceCameraPos.xyz; u_xlat92 = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat92 = inversesqrt(u_xlat92); u_xlat2.xyz = vec3(u_xlat92) * u_xlat2.xyz; u_xlat16_3.x = (u_xlatb90) ? u_xlat2.x : hlslcc_mtx4x4unity_MatrixV[0].z; u_xlat16_3.y = (u_xlatb90) ? u_xlat2.y : hlslcc_mtx4x4unity_MatrixV[1].z; u_xlat16_3.z = (u_xlatb90) ? u_xlat2.z : hlslcc_mtx4x4unity_MatrixV[2].z; u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD3.yzx; u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD3.zxy + (-u_xlat2.xyz); u_xlat2.xyz = u_xlat2.xzy * vs_TEXCOORD3.www; u_xlat5.x = vs_TEXCOORD3.x; u_xlat5.y = u_xlat2.x; u_xlat5.z = vs_TEXCOORD2.x; u_xlat5.x = dot(u_xlat16_4.xyz, u_xlat5.xyz); u_xlat6.x = vs_TEXCOORD3.y; u_xlat6.y = u_xlat2.z; u_xlat6.z = vs_TEXCOORD2.y; u_xlat5.y = dot(u_xlat16_4.xyz, u_xlat6.xyz); u_xlat2.x = vs_TEXCOORD3.z; u_xlat2.z = vs_TEXCOORD2.z; u_xlat5.z = dot(u_xlat16_4.xyz, u_xlat2.xyz); u_xlat90 = dot(u_xlat5.xyz, u_xlat5.xyz); u_xlat90 = inversesqrt(u_xlat90); u_xlat2.xyz = vec3(u_xlat90) * u_xlat5.xyz; u_xlat5.xy = vec2(1.0) / vec2(_ScaledScreenParams.xy); u_xlat5.xy = u_xlat5.xy * hlslcc_FragCoord.xy; u_xlat16_93 = (-_Metallic) * 0.959999979 + 0.959999979; u_xlat16_4.x = (-u_xlat16_93) + _Smoothness; u_xlat16_34.xyz = u_xlat16_1.xyz * vec3(u_xlat16_93); u_xlat16_7.xyz = u_xlat16_0.xyz * _BaseColor.xyz + vec3(-0.0399999991, -0.0399999991, -0.0399999991); u_xlat16_7.xyz = vec3(vec3(_Metallic, _Metallic, _Metallic)) * u_xlat16_7.xyz + vec3(0.0399999991, 0.0399999991, 0.0399999991); u_xlat16_93 = (-_Smoothness) + 1.0; u_xlat16_97 = u_xlat16_93 * u_xlat16_93; u_xlat16_97 = max(u_xlat16_97, 0.0078125); u_xlat16_8 = u_xlat16_97 * u_xlat16_97; u_xlat16_4.x = u_xlat16_4.x + 1.0; u_xlat16_4.x = clamp(u_xlat16_4.x, 0.0, 1.0); u_xlat16_38 = u_xlat16_97 * 4.0 + 2.0; u_xlat16_0.x = texture(_ScreenSpaceOcclusionTexture, u_xlat5.xy, _GlobalMipBias.x).x; u_xlat16_68 = (-_AmbientOcclusionParam.x) + 1.0; u_xlat16_68 = u_xlat16_0.x + u_xlat16_68; u_xlat16_68 = clamp(u_xlat16_68, 0.0, 1.0); u_xlat0 = u_xlat16_68 + -1.0; u_xlat0 = _AmbientOcclusionParam.w * u_xlat0 + 1.0; u_xlatb30 = 0.0<_MainLightShadowParams.y; if(u_xlatb30){ u_xlatb30 = _MainLightShadowParams.y==1.0; if(u_xlatb30){ u_xlat5 = vs_TEXCOORD6.xyxy + _MainLightShadowOffset0; vec3 txVec0 = vec3(u_xlat5.xy,vs_TEXCOORD6.z); u_xlat16_6.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec0, 0.0); vec3 txVec1 = vec3(u_xlat5.zw,vs_TEXCOORD6.z); u_xlat16_6.y = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec1, 0.0); u_xlat5 = vs_TEXCOORD6.xyxy + _MainLightShadowOffset1; vec3 txVec2 = vec3(u_xlat5.xy,vs_TEXCOORD6.z); u_xlat16_6.z = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec2, 0.0); vec3 txVec3 = vec3(u_xlat5.zw,vs_TEXCOORD6.z); u_xlat16_6.w = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec3, 0.0); u_xlat16_98 = dot(u_xlat16_6, vec4(0.25, 0.25, 0.25, 0.25)); } else { u_xlatb30 = _MainLightShadowParams.y==2.0; if(u_xlatb30){ u_xlat16_9.xy = vs_TEXCOORD6.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_9.xy = floor(u_xlat16_9.xy); u_xlat16_69.xy = vs_TEXCOORD6.xy * _MainLightShadowmapSize.zw + (-u_xlat16_9.xy); u_xlat16_5 = u_xlat16_69.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_6 = u_xlat16_5.xxzz * u_xlat16_5.xxzz; u_xlat16_10.xy = u_xlat16_6.yw * vec2(0.0799999982, 0.0799999982); u_xlat16_70.xy = u_xlat16_6.xz * vec2(0.5, 0.5) + (-u_xlat16_69.xy); u_xlat16_11.xy = (-u_xlat16_69.xy) + vec2(1.0, 1.0); u_xlat16_71.xy = min(u_xlat16_69.xy, vec2(0.0, 0.0)); u_xlat16_71.xy = (-u_xlat16_71.xy) * u_xlat16_71.xy + u_xlat16_11.xy; u_xlat16_69.xy = max(u_xlat16_69.xy, vec2(0.0, 0.0)); u_xlat16_69.xy = (-u_xlat16_69.xy) * u_xlat16_69.xy + u_xlat16_5.yw; u_xlat16_71.xy = u_xlat16_71.xy + vec2(1.0, 1.0); u_xlat16_69.xy = u_xlat16_69.xy + vec2(1.0, 1.0); u_xlat16_6.xy = u_xlat16_70.xy * vec2(0.159999996, 0.159999996); u_xlat16_12.xy = u_xlat16_11.xy * vec2(0.159999996, 0.159999996); u_xlat16_11.xy = u_xlat16_71.xy * vec2(0.159999996, 0.159999996); u_xlat16_13.xy = u_xlat16_69.xy * vec2(0.159999996, 0.159999996); u_xlat16_69.xy = u_xlat16_5.yw * vec2(0.159999996, 0.159999996); u_xlat16_6.z = u_xlat16_11.x; u_xlat16_6.w = u_xlat16_69.x; u_xlat16_12.z = u_xlat16_13.x; u_xlat16_12.w = u_xlat16_10.x; u_xlat16_5 = u_xlat16_6.zwxz + u_xlat16_12.zwxz; u_xlat16_11.z = u_xlat16_6.y; u_xlat16_11.w = u_xlat16_69.y; u_xlat16_13.z = u_xlat16_12.y; u_xlat16_13.w = u_xlat16_10.y; u_xlat16_10.xyz = u_xlat16_11.zyw + u_xlat16_13.zyw; u_xlat16_11.xyz = u_xlat16_12.xzw / u_xlat16_5.zwy; u_xlat16_11.xyz = u_xlat16_11.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_12.xyz = u_xlat16_13.zyw / u_xlat16_10.xyz; u_xlat16_12.xyz = u_xlat16_12.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_6.xyz = u_xlat16_11.yxz * _MainLightShadowmapSize.xxx; u_xlat16_11.xyz = u_xlat16_12.xyz * _MainLightShadowmapSize.yyy; u_xlat16_6.w = u_xlat16_11.x; u_xlat16_12 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.ywxw; u_xlat16_69.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_6.zw; u_xlat16_11.w = u_xlat16_6.y; u_xlat16_6.yw = u_xlat16_11.yz; u_xlat16_13 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_11 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_11.wywz; u_xlat16_6 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xwzw; u_xlat16_14 = u_xlat16_5.zwyz * u_xlat16_10.xxxy; u_xlat16_15 = u_xlat16_5 * u_xlat16_10.yyzz; u_xlat16_9.x = u_xlat16_5.y * u_xlat16_10.z; vec3 txVec4 = vec3(u_xlat16_12.xy,vs_TEXCOORD6.z); u_xlat16_30 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec4, 0.0); vec3 txVec5 = vec3(u_xlat16_12.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec5, 0.0); u_xlat60.x = u_xlat16_60 * u_xlat16_14.y; u_xlat30.x = u_xlat16_14.x * u_xlat16_30 + u_xlat60.x; vec3 txVec6 = vec3(u_xlat16_69.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec6, 0.0); u_xlat30.x = u_xlat16_14.z * u_xlat16_60 + u_xlat30.x; vec3 txVec7 = vec3(u_xlat16_11.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec7, 0.0); u_xlat30.x = u_xlat16_14.w * u_xlat16_60 + u_xlat30.x; vec3 txVec8 = vec3(u_xlat16_13.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec8, 0.0); u_xlat30.x = u_xlat16_15.x * u_xlat16_60 + u_xlat30.x; vec3 txVec9 = vec3(u_xlat16_13.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec9, 0.0); u_xlat30.x = u_xlat16_15.y * u_xlat16_60 + u_xlat30.x; vec3 txVec10 = vec3(u_xlat16_11.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec10, 0.0); u_xlat30.x = u_xlat16_15.z * u_xlat16_60 + u_xlat30.x; vec3 txVec11 = vec3(u_xlat16_6.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec11, 0.0); u_xlat30.x = u_xlat16_15.w * u_xlat16_60 + u_xlat30.x; vec3 txVec12 = vec3(u_xlat16_6.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec12, 0.0); u_xlat98 = u_xlat16_9.x * u_xlat16_60 + u_xlat30.x; u_xlat16_98 = u_xlat98; } else { u_xlat16_9.xy = vs_TEXCOORD6.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_9.xy = floor(u_xlat16_9.xy); u_xlat16_69.xy = vs_TEXCOORD6.xy * _MainLightShadowmapSize.zw + (-u_xlat16_9.xy); u_xlat16_5 = u_xlat16_69.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_6 = u_xlat16_5.xxzz * u_xlat16_5.xxzz; u_xlat16_10.yw = u_xlat16_6.yw * vec2(0.0408160016, 0.0408160016); u_xlat16_11.xy = u_xlat16_6.xz * vec2(0.5, 0.5) + (-u_xlat16_69.xy); u_xlat16_71.xy = (-u_xlat16_69.xy) + vec2(1.0, 1.0); u_xlat16_12.xy = min(u_xlat16_69.xy, vec2(0.0, 0.0)); u_xlat16_71.xy = (-u_xlat16_12.xy) * u_xlat16_12.xy + u_xlat16_71.xy; u_xlat16_12.xy = max(u_xlat16_69.xy, vec2(0.0, 0.0)); u_xlat16_12.xy = (-u_xlat16_12.xy) * u_xlat16_12.xy + u_xlat16_5.yw; u_xlat16_71.xy = u_xlat16_71.xy + vec2(2.0, 2.0); u_xlat16_12.xy = u_xlat16_12.xy + vec2(2.0, 2.0); u_xlat16_5.z = u_xlat16_12.x * 0.0816320032; u_xlat16_6.xy = u_xlat16_11.yx * vec2(0.0816320032, 0.0816320032); u_xlat16_11.xy = u_xlat16_71.xy * vec2(0.0816320032, 0.0816320032); u_xlat16_6.z = u_xlat16_12.y * 0.0816320032; u_xlat16_5.x = u_xlat16_6.y; u_xlat16_5.yw = u_xlat16_69.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_12.xz = u_xlat16_69.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_12.y = u_xlat16_11.x; u_xlat16_12.w = u_xlat16_10.y; u_xlat16_5 = u_xlat16_5 + u_xlat16_12; u_xlat16_6.yw = u_xlat16_69.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_10.xz = u_xlat16_69.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_10.y = u_xlat16_11.y; u_xlat16_6 = u_xlat16_6 + u_xlat16_10; u_xlat16_11 = u_xlat16_12 / u_xlat16_5; u_xlat16_11 = u_xlat16_11 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_10 = u_xlat16_10 / u_xlat16_6; u_xlat16_10 = u_xlat16_10 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_11 = u_xlat16_11.wxyz * _MainLightShadowmapSize.xxxx; u_xlat16_10 = u_xlat16_10.xwyz * _MainLightShadowmapSize.yyyy; u_xlat16_12.xzw = u_xlat16_11.yzw; u_xlat16_12.y = u_xlat16_10.x; u_xlat16_13 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_12.xyzy; u_xlat16_69.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_12.wy; u_xlat16_11.y = u_xlat16_12.y; u_xlat16_12.y = u_xlat16_10.z; u_xlat16_14 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_12.xyzy; u_xlat16_15.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_12.wy; u_xlat16_11.z = u_xlat16_12.y; u_xlat16_16 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_11.xyxz; u_xlat16_12.y = u_xlat16_10.w; u_xlat16_17 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_12.xyzy; u_xlat16_41.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_12.wy; u_xlat16_11.w = u_xlat16_12.y; u_xlat16_75.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_11.xw; u_xlat16_10.xzw = u_xlat16_12.xzw; u_xlat16_12 = u_xlat16_9.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_10.xyzy; u_xlat16_70.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_10.wy; u_xlat16_10.x = u_xlat16_11.x; u_xlat16_9.xy = u_xlat16_9.xy * _MainLightShadowmapSize.xy + u_xlat16_10.xy; u_xlat16_18 = u_xlat16_5 * u_xlat16_6.xxxx; u_xlat16_19 = u_xlat16_5 * u_xlat16_6.yyyy; u_xlat16_20 = u_xlat16_5 * u_xlat16_6.zzzz; u_xlat16_5 = u_xlat16_5 * u_xlat16_6.wwww; vec3 txVec13 = vec3(u_xlat16_13.xy,vs_TEXCOORD6.z); u_xlat16_30 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec13, 0.0); vec3 txVec14 = vec3(u_xlat16_13.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec14, 0.0); u_xlat60.x = u_xlat16_60 * u_xlat16_18.y; u_xlat30.x = u_xlat16_18.x * u_xlat16_30 + u_xlat60.x; vec3 txVec15 = vec3(u_xlat16_69.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec15, 0.0); u_xlat30.x = u_xlat16_18.z * u_xlat16_60 + u_xlat30.x; vec3 txVec16 = vec3(u_xlat16_16.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec16, 0.0); u_xlat30.x = u_xlat16_18.w * u_xlat16_60 + u_xlat30.x; vec3 txVec17 = vec3(u_xlat16_14.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec17, 0.0); u_xlat30.x = u_xlat16_19.x * u_xlat16_60 + u_xlat30.x; vec3 txVec18 = vec3(u_xlat16_14.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec18, 0.0); u_xlat30.x = u_xlat16_19.y * u_xlat16_60 + u_xlat30.x; vec3 txVec19 = vec3(u_xlat16_15.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec19, 0.0); u_xlat30.x = u_xlat16_19.z * u_xlat16_60 + u_xlat30.x; vec3 txVec20 = vec3(u_xlat16_16.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec20, 0.0); u_xlat30.x = u_xlat16_19.w * u_xlat16_60 + u_xlat30.x; vec3 txVec21 = vec3(u_xlat16_17.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec21, 0.0); u_xlat30.x = u_xlat16_20.x * u_xlat16_60 + u_xlat30.x; vec3 txVec22 = vec3(u_xlat16_17.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec22, 0.0); u_xlat30.x = u_xlat16_20.y * u_xlat16_60 + u_xlat30.x; vec3 txVec23 = vec3(u_xlat16_41.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec23, 0.0); u_xlat30.x = u_xlat16_20.z * u_xlat16_60 + u_xlat30.x; vec3 txVec24 = vec3(u_xlat16_75.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec24, 0.0); u_xlat30.x = u_xlat16_20.w * u_xlat16_60 + u_xlat30.x; vec3 txVec25 = vec3(u_xlat16_12.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec25, 0.0); u_xlat30.x = u_xlat16_5.x * u_xlat16_60 + u_xlat30.x; vec3 txVec26 = vec3(u_xlat16_12.zw,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec26, 0.0); u_xlat30.x = u_xlat16_5.y * u_xlat16_60 + u_xlat30.x; vec3 txVec27 = vec3(u_xlat16_70.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec27, 0.0); u_xlat30.x = u_xlat16_5.z * u_xlat16_60 + u_xlat30.x; vec3 txVec28 = vec3(u_xlat16_9.xy,vs_TEXCOORD6.z); u_xlat16_60 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec28, 0.0); u_xlat98 = u_xlat16_5.w * u_xlat16_60 + u_xlat30.x; u_xlat16_98 = u_xlat98; } } } else { vec3 txVec29 = vec3(vs_TEXCOORD6.xy,vs_TEXCOORD6.z); u_xlat16_98 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec29, 0.0); u_xlat16_98 = u_xlat16_98; } u_xlat16_9.x = (-_MainLightShadowParams.x) + 1.0; u_xlat16_98 = u_xlat16_98 * _MainLightShadowParams.x + u_xlat16_9.x; u_xlatb30 = 0.0>=vs_TEXCOORD6.z; u_xlatb60.x = vs_TEXCOORD6.z>=1.0; u_xlatb30 = u_xlatb60.x || u_xlatb30; u_xlat16_98 = (u_xlatb30) ? 1.0 : u_xlat16_98; u_xlat30.xyz = vs_TEXCOORD1.xyz + (-_WorldSpaceCameraPos.xyz); u_xlat30.x = dot(u_xlat30.xyz, u_xlat30.xyz); u_xlat60.x = u_xlat30.x * _MainLightShadowParams.z + _MainLightShadowParams.w; u_xlat60.x = clamp(u_xlat60.x, 0.0, 1.0); u_xlat16_9.x = (-u_xlat16_98) + 1.0; u_xlat16_98 = u_xlat60.x * u_xlat16_9.x + u_xlat16_98; u_xlatb60.x = _MainLightCookieTextureFormat!=-1.0; if(u_xlatb60.x){ u_xlat60.xy = vs_TEXCOORD1.yy * hlslcc_mtx4x4_MainLightWorldToLight[1].xy; u_xlat60.xy = hlslcc_mtx4x4_MainLightWorldToLight[0].xy * vs_TEXCOORD1.xx + u_xlat60.xy; u_xlat60.xy = hlslcc_mtx4x4_MainLightWorldToLight[2].xy * vs_TEXCOORD1.zz + u_xlat60.xy; u_xlat60.xy = u_xlat60.xy + hlslcc_mtx4x4_MainLightWorldToLight[3].xy; u_xlat60.xy = u_xlat60.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat16_5 = texture(_MainLightCookieTexture, u_xlat60.xy, _GlobalMipBias.x); u_xlatb60.xy = equal(vec4(vec4(_MainLightCookieTextureFormat, _MainLightCookieTextureFormat, _MainLightCookieTextureFormat, _MainLightCookieTextureFormat)), vec4(0.0, 1.0, 0.0, 1.0)).xy; u_xlat16_9.x = (u_xlatb60.y) ? u_xlat16_5.w : u_xlat16_5.x; u_xlat16_9.xyz = (u_xlatb60.x) ? u_xlat16_5.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 = vec3(u_xlat0) * u_xlat16_9.xyz; u_xlat16_99 = dot((-u_xlat16_3.xyz), u_xlat2.xyz); u_xlat16_99 = u_xlat16_99 + u_xlat16_99; u_xlat16_10.xyz = u_xlat2.xyz * (-vec3(u_xlat16_99)) + (-u_xlat16_3.xyz); u_xlat16_99 = dot(u_xlat2.xyz, u_xlat16_3.xyz); u_xlat16_99 = clamp(u_xlat16_99, 0.0, 1.0); u_xlat16_99 = (-u_xlat16_99) + 1.0; u_xlat16_99 = u_xlat16_99 * u_xlat16_99; u_xlat16_99 = u_xlat16_99 * u_xlat16_99; u_xlat16_100 = (-u_xlat16_93) * 0.699999988 + 1.70000005; u_xlat16_93 = u_xlat16_93 * u_xlat16_100; u_xlat16_93 = u_xlat16_93 * 6.0; u_xlat21.xyz = unity_SpecCube0_BoxMax.xyz + (-unity_SpecCube0_BoxMin.xyz); u_xlat16_100 = dot(u_xlat21.xyz, u_xlat21.xyz); u_xlat21.xyz = unity_SpecCube1_BoxMax.xyz + (-unity_SpecCube1_BoxMin.xyz); u_xlat16_11.x = dot(u_xlat21.xyz, u_xlat21.xyz); u_xlat16_100 = u_xlat16_100 + (-u_xlat16_11.x); u_xlatb60.x = 0.0> (2u & uint(0x1F))); u_xlati82 = int(uint(u_xlatu_loop_1 & 3u)); u_xlat92 = dot(unity_LightIndices[int(u_xlatu92)], ImmCB_0[u_xlati82]); u_xlati92 = int(u_xlat92); u_xlat23.xyz = (-vs_TEXCOORD1.xyz) * _AdditionalLightsPosition[u_xlati92].www + _AdditionalLightsPosition[u_xlati92].xyz; u_xlat82 = dot(u_xlat23.xyz, u_xlat23.xyz); u_xlat82 = max(u_xlat82, 6.10351562e-05); u_xlat112 = inversesqrt(u_xlat82); u_xlat24.xyz = vec3(u_xlat112) * u_xlat23.xyz; u_xlat113 = float(1.0) / float(u_xlat82); u_xlat82 = u_xlat82 * _AdditionalLightsAttenuation[u_xlati92].x; u_xlat16_93 = (-u_xlat82) * u_xlat82 + 1.0; u_xlat16_93 = max(u_xlat16_93, 0.0); u_xlat16_93 = u_xlat16_93 * u_xlat16_93; u_xlat82 = u_xlat16_93 * u_xlat113; u_xlat16_93 = dot(_AdditionalLightsSpotDir[u_xlati92].xyz, u_xlat24.xyz); u_xlat16_93 = u_xlat16_93 * _AdditionalLightsAttenuation[u_xlati92].z + _AdditionalLightsAttenuation[u_xlati92].w; u_xlat16_93 = clamp(u_xlat16_93, 0.0, 1.0); u_xlat16_93 = u_xlat16_93 * u_xlat16_93; u_xlat82 = u_xlat16_93 * u_xlat82; u_xlati113 = int(_AdditionalShadowParams[u_xlati92].w); u_xlatb114 = u_xlati113>=0; if(u_xlatb114){ u_xlatb114 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(_AdditionalShadowParams[u_xlati92].z); if(u_xlatb114){ u_xlatb25.xyz = greaterThanEqual(abs(u_xlat24.zzyz), abs(u_xlat24.xyxx)).xyz; u_xlatb114 = u_xlatb25.y && u_xlatb25.x; u_xlatb25.xyw = lessThan((-u_xlat24.zyzx), vec4(0.0, 0.0, 0.0, 0.0)).xyw; u_xlat25.x = (u_xlatb25.x) ? float(5.0) : float(4.0); u_xlat25.y = (u_xlatb25.y) ? float(3.0) : float(2.0); u_xlat115 = u_xlatb25.w ? 1.0 : float(0.0); u_xlat55.x = (u_xlatb25.z) ? u_xlat25.y : u_xlat115; u_xlat114 = (u_xlatb114) ? u_xlat25.x : u_xlat55.x; u_xlat25.x = trunc(_AdditionalShadowParams[u_xlati92].w); u_xlat114 = u_xlat114 + u_xlat25.x; u_xlati113 = int(u_xlat114); } u_xlati113 = int(u_xlati113 << (2 & int(0x1F))); u_xlat5 = vs_TEXCOORD1.yyyy * hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati113 + 1)]; u_xlat5 = hlslcc_mtx4x4_AdditionalLightsWorldToShadow[u_xlati113] * vs_TEXCOORD1.xxxx + u_xlat5; u_xlat5 = hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati113 + 2)] * vs_TEXCOORD1.zzzz + u_xlat5; u_xlat5 = u_xlat5 + hlslcc_mtx4x4_AdditionalLightsWorldToShadow[(u_xlati113 + 3)]; u_xlat25.xyz = u_xlat5.xyz / u_xlat5.www; u_xlatb113 = 0.0<_AdditionalShadowParams[u_xlati92].y; if(u_xlatb113){ u_xlatb113 = 1.0==_AdditionalShadowParams[u_xlati92].y; if(u_xlatb113){ u_xlat5 = u_xlat25.xyxy + _AdditionalShadowOffset0; vec3 txVec30 = vec3(u_xlat5.xy,u_xlat25.z); u_xlat16_6.x = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec30, 0.0); vec3 txVec31 = vec3(u_xlat5.zw,u_xlat25.z); u_xlat16_6.y = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec31, 0.0); u_xlat5 = u_xlat25.xyxy + _AdditionalShadowOffset1; vec3 txVec32 = vec3(u_xlat5.xy,u_xlat25.z); u_xlat16_6.z = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec32, 0.0); vec3 txVec33 = vec3(u_xlat5.zw,u_xlat25.z); u_xlat16_6.w = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec33, 0.0); u_xlat16_93 = dot(u_xlat16_6, vec4(0.25, 0.25, 0.25, 0.25)); } else { u_xlatb113 = 2.0==_AdditionalShadowParams[u_xlati92].y; if(u_xlatb113){ u_xlat16_12.xy = u_xlat25.xy * _AdditionalShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_12.xy = floor(u_xlat16_12.xy); u_xlat16_72.xy = u_xlat25.xy * _AdditionalShadowmapSize.zw + (-u_xlat16_12.xy); u_xlat16_5 = u_xlat16_72.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_6 = u_xlat16_5.xxzz * u_xlat16_5.xxzz; u_xlat16_13.xy = u_xlat16_6.yw * vec2(0.0799999982, 0.0799999982); u_xlat16_73.xy = u_xlat16_6.xz * vec2(0.5, 0.5) + (-u_xlat16_72.xy); u_xlat16_14.xy = (-u_xlat16_72.xy) + vec2(1.0, 1.0); u_xlat16_74.xy = min(u_xlat16_72.xy, vec2(0.0, 0.0)); u_xlat16_74.xy = (-u_xlat16_74.xy) * u_xlat16_74.xy + u_xlat16_14.xy; u_xlat16_72.xy = max(u_xlat16_72.xy, vec2(0.0, 0.0)); u_xlat16_72.xy = (-u_xlat16_72.xy) * u_xlat16_72.xy + u_xlat16_5.yw; u_xlat16_74.xy = u_xlat16_74.xy + vec2(1.0, 1.0); u_xlat16_72.xy = u_xlat16_72.xy + vec2(1.0, 1.0); u_xlat16_6.xy = u_xlat16_73.xy * vec2(0.159999996, 0.159999996); u_xlat16_15.xy = u_xlat16_14.xy * vec2(0.159999996, 0.159999996); u_xlat16_14.xy = u_xlat16_74.xy * vec2(0.159999996, 0.159999996); u_xlat16_16.xy = u_xlat16_72.xy * vec2(0.159999996, 0.159999996); u_xlat16_72.xy = u_xlat16_5.yw * vec2(0.159999996, 0.159999996); u_xlat16_6.z = u_xlat16_14.x; u_xlat16_6.w = u_xlat16_72.x; u_xlat16_15.z = u_xlat16_16.x; u_xlat16_15.w = u_xlat16_13.x; u_xlat16_5 = u_xlat16_6.zwxz + u_xlat16_15.zwxz; u_xlat16_14.z = u_xlat16_6.y; u_xlat16_14.w = u_xlat16_72.y; u_xlat16_16.z = u_xlat16_15.y; u_xlat16_16.w = u_xlat16_13.y; u_xlat16_13.xyz = u_xlat16_14.zyw + u_xlat16_16.zyw; u_xlat16_14.xyz = u_xlat16_15.xzw / u_xlat16_5.zwy; u_xlat16_14.xyz = u_xlat16_14.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_15.xyz = u_xlat16_16.zyw / u_xlat16_13.xyz; u_xlat16_15.xyz = u_xlat16_15.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_6.xyz = u_xlat16_14.yxz * _AdditionalShadowmapSize.xxx; u_xlat16_14.xyz = u_xlat16_15.xyz * _AdditionalShadowmapSize.yyy; u_xlat16_6.w = u_xlat16_14.x; u_xlat16_15 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_6.ywxw; u_xlat16_72.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_6.zw; u_xlat16_14.w = u_xlat16_6.y; u_xlat16_6.yw = u_xlat16_14.yz; u_xlat16_16 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_14 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_14.wywz; u_xlat16_6 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_6.xwzw; u_xlat16_17 = u_xlat16_5.zwyz * u_xlat16_13.xxxy; u_xlat16_18 = u_xlat16_5 * u_xlat16_13.yyzz; u_xlat16_4.x = u_xlat16_5.y * u_xlat16_13.z; vec3 txVec34 = vec3(u_xlat16_15.xy,u_xlat25.z); u_xlat16_113 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec34, 0.0); vec3 txVec35 = vec3(u_xlat16_15.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec35, 0.0); u_xlat114 = u_xlat16_17.y * u_xlat16_114; u_xlat113 = u_xlat16_17.x * u_xlat16_113 + u_xlat114; vec3 txVec36 = vec3(u_xlat16_72.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec36, 0.0); u_xlat113 = u_xlat16_17.z * u_xlat16_114 + u_xlat113; vec3 txVec37 = vec3(u_xlat16_14.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec37, 0.0); u_xlat113 = u_xlat16_17.w * u_xlat16_114 + u_xlat113; vec3 txVec38 = vec3(u_xlat16_16.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec38, 0.0); u_xlat113 = u_xlat16_18.x * u_xlat16_114 + u_xlat113; vec3 txVec39 = vec3(u_xlat16_16.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec39, 0.0); u_xlat113 = u_xlat16_18.y * u_xlat16_114 + u_xlat113; vec3 txVec40 = vec3(u_xlat16_14.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec40, 0.0); u_xlat113 = u_xlat16_18.z * u_xlat16_114 + u_xlat113; vec3 txVec41 = vec3(u_xlat16_6.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec41, 0.0); u_xlat113 = u_xlat16_18.w * u_xlat16_114 + u_xlat113; vec3 txVec42 = vec3(u_xlat16_6.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec42, 0.0); u_xlat93 = u_xlat16_4.x * u_xlat16_114 + u_xlat113; u_xlat16_93 = u_xlat93; } else { u_xlat16_12.xy = u_xlat25.xy * _AdditionalShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_12.xy = floor(u_xlat16_12.xy); u_xlat16_72.xy = u_xlat25.xy * _AdditionalShadowmapSize.zw + (-u_xlat16_12.xy); u_xlat16_5 = u_xlat16_72.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_6 = u_xlat16_5.xxzz * u_xlat16_5.xxzz; u_xlat16_13.yw = u_xlat16_6.yw * vec2(0.0408160016, 0.0408160016); u_xlat16_14.xy = u_xlat16_6.xz * vec2(0.5, 0.5) + (-u_xlat16_72.xy); u_xlat16_74.xy = (-u_xlat16_72.xy) + vec2(1.0, 1.0); u_xlat16_15.xy = min(u_xlat16_72.xy, vec2(0.0, 0.0)); u_xlat16_74.xy = (-u_xlat16_15.xy) * u_xlat16_15.xy + u_xlat16_74.xy; u_xlat16_15.xy = max(u_xlat16_72.xy, vec2(0.0, 0.0)); u_xlat16_15.xy = (-u_xlat16_15.xy) * u_xlat16_15.xy + u_xlat16_5.yw; u_xlat16_74.xy = u_xlat16_74.xy + vec2(2.0, 2.0); u_xlat16_15.xy = u_xlat16_15.xy + vec2(2.0, 2.0); u_xlat16_5.z = u_xlat16_15.x * 0.0816320032; u_xlat16_6.xy = u_xlat16_14.yx * vec2(0.0816320032, 0.0816320032); u_xlat16_14.xy = u_xlat16_74.xy * vec2(0.0816320032, 0.0816320032); u_xlat16_6.z = u_xlat16_15.y * 0.0816320032; u_xlat16_5.x = u_xlat16_6.y; u_xlat16_5.yw = u_xlat16_72.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_15.xz = u_xlat16_72.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_15.y = u_xlat16_14.x; u_xlat16_15.w = u_xlat16_13.y; u_xlat16_5 = u_xlat16_5 + u_xlat16_15; u_xlat16_6.yw = u_xlat16_72.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_13.xz = u_xlat16_72.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_13.y = u_xlat16_14.y; u_xlat16_6 = u_xlat16_6 + u_xlat16_13; u_xlat16_14 = u_xlat16_15 / u_xlat16_5; u_xlat16_14 = u_xlat16_14 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_13 = u_xlat16_13 / u_xlat16_6; u_xlat16_13 = u_xlat16_13 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_14 = u_xlat16_14.wxyz * _AdditionalShadowmapSize.xxxx; u_xlat16_13 = u_xlat16_13.xwyz * _AdditionalShadowmapSize.yyyy; u_xlat16_15.xzw = u_xlat16_14.yzw; u_xlat16_15.y = u_xlat16_13.x; u_xlat16_16 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_15.xyzy; u_xlat16_72.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_15.wy; u_xlat16_14.y = u_xlat16_15.y; u_xlat16_15.y = u_xlat16_13.z; u_xlat16_17 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_15.xyzy; u_xlat16_18.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_15.wy; u_xlat16_14.z = u_xlat16_15.y; u_xlat16_19 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_14.xyxz; u_xlat16_15.y = u_xlat16_13.w; u_xlat16_20 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_15.xyzy; u_xlat16_44.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_15.wy; u_xlat16_14.w = u_xlat16_15.y; u_xlat16_78.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_14.xw; u_xlat16_13.xzw = u_xlat16_15.xzw; u_xlat16_15 = u_xlat16_12.xyxy * _AdditionalShadowmapSize.xyxy + u_xlat16_13.xyzy; u_xlat16_73.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_13.wy; u_xlat16_13.x = u_xlat16_14.x; u_xlat16_12.xy = u_xlat16_12.xy * _AdditionalShadowmapSize.xy + u_xlat16_13.xy; u_xlat16_21 = u_xlat16_5 * u_xlat16_6.xxxx; u_xlat16_26 = u_xlat16_5 * u_xlat16_6.yyyy; u_xlat16_27 = u_xlat16_5 * u_xlat16_6.zzzz; u_xlat16_5 = u_xlat16_5 * u_xlat16_6.wwww; vec3 txVec43 = vec3(u_xlat16_16.xy,u_xlat25.z); u_xlat16_113 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec43, 0.0); vec3 txVec44 = vec3(u_xlat16_16.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec44, 0.0); u_xlat114 = u_xlat16_21.y * u_xlat16_114; u_xlat113 = u_xlat16_21.x * u_xlat16_113 + u_xlat114; vec3 txVec45 = vec3(u_xlat16_72.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec45, 0.0); u_xlat113 = u_xlat16_21.z * u_xlat16_114 + u_xlat113; vec3 txVec46 = vec3(u_xlat16_19.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec46, 0.0); u_xlat113 = u_xlat16_21.w * u_xlat16_114 + u_xlat113; vec3 txVec47 = vec3(u_xlat16_17.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec47, 0.0); u_xlat113 = u_xlat16_26.x * u_xlat16_114 + u_xlat113; vec3 txVec48 = vec3(u_xlat16_17.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec48, 0.0); u_xlat113 = u_xlat16_26.y * u_xlat16_114 + u_xlat113; vec3 txVec49 = vec3(u_xlat16_18.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec49, 0.0); u_xlat113 = u_xlat16_26.z * u_xlat16_114 + u_xlat113; vec3 txVec50 = vec3(u_xlat16_19.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec50, 0.0); u_xlat113 = u_xlat16_26.w * u_xlat16_114 + u_xlat113; vec3 txVec51 = vec3(u_xlat16_20.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec51, 0.0); u_xlat113 = u_xlat16_27.x * u_xlat16_114 + u_xlat113; vec3 txVec52 = vec3(u_xlat16_20.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec52, 0.0); u_xlat113 = u_xlat16_27.y * u_xlat16_114 + u_xlat113; vec3 txVec53 = vec3(u_xlat16_44.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec53, 0.0); u_xlat113 = u_xlat16_27.z * u_xlat16_114 + u_xlat113; vec3 txVec54 = vec3(u_xlat16_78.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec54, 0.0); u_xlat113 = u_xlat16_27.w * u_xlat16_114 + u_xlat113; vec3 txVec55 = vec3(u_xlat16_15.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec55, 0.0); u_xlat113 = u_xlat16_5.x * u_xlat16_114 + u_xlat113; vec3 txVec56 = vec3(u_xlat16_15.zw,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec56, 0.0); u_xlat113 = u_xlat16_5.y * u_xlat16_114 + u_xlat113; vec3 txVec57 = vec3(u_xlat16_73.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec57, 0.0); u_xlat113 = u_xlat16_5.z * u_xlat16_114 + u_xlat113; vec3 txVec58 = vec3(u_xlat16_12.xy,u_xlat25.z); u_xlat16_114 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec58, 0.0); u_xlat93 = u_xlat16_5.w * u_xlat16_114 + u_xlat113; u_xlat16_93 = u_xlat93; } } } else { vec3 txVec59 = vec3(u_xlat25.xy,u_xlat25.z); u_xlat16_93 = textureLod(hlslcc_zcmp_AdditionalLightsShadowmapTexture, txVec59, 0.0); u_xlat16_93 = u_xlat16_93; } u_xlat16_4.x = 1.0 + (-_AdditionalShadowParams[u_xlati92].x); u_xlat16_93 = u_xlat16_93 * _AdditionalShadowParams[u_xlati92].x + u_xlat16_4.x; u_xlatb113 = 0.0>=u_xlat25.z; u_xlatb114 = u_xlat25.z>=1.0; u_xlatb113 = u_xlatb113 || u_xlatb114; u_xlat16_93 = (u_xlatb113) ? 1.0 : u_xlat16_93; } else { u_xlat16_93 = 1.0; } u_xlat16_4.x = (-u_xlat16_93) + 1.0; u_xlat16_93 = u_xlat30.x * u_xlat16_4.x + u_xlat16_93; u_xlati113 = int(1 << (u_xlati92 & int(0x1F))); u_xlati113 = int(uint(uint(u_xlati113) & uint(floatBitsToUint(_AdditionalLightsCookieEnableBits)))); if(u_xlati113 != 0) { u_xlati113 = int(_AdditionalLightsLightTypes[u_xlati92]); u_xlati114 = (u_xlati113 != 0) ? 0 : 1; u_xlati25 = int(u_xlati92 << (2 & int(0x1F))); if(u_xlati114 != 0) { u_xlat55.xyz = vs_TEXCOORD1.yyy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 1)].xyw; u_xlat55.xyz = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati25].xyw * vs_TEXCOORD1.xxx + u_xlat55.xyz; u_xlat55.xyz = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 2)].xyw * vs_TEXCOORD1.zzz + u_xlat55.xyz; u_xlat55.xyz = u_xlat55.xyz + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 3)].xyw; u_xlat55.xy = u_xlat55.xy / u_xlat55.zz; u_xlat55.xy = u_xlat55.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat55.xy = clamp(u_xlat55.xy, 0.0, 1.0); u_xlat55.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati92].xy * u_xlat55.xy + _AdditionalLightsCookieAtlasUVRects[u_xlati92].zw; } else { u_xlatb113 = u_xlati113==1; u_xlati113 = u_xlatb113 ? 1 : int(0); if(u_xlati113 != 0) { u_xlat28.xy = vs_TEXCOORD1.yy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 1)].xy; u_xlat28.xy = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati25].xy * vs_TEXCOORD1.xx + u_xlat28.xy; u_xlat28.xy = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 2)].xy * vs_TEXCOORD1.zz + u_xlat28.xy; u_xlat28.xy = u_xlat28.xy + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 3)].xy; u_xlat28.xy = u_xlat28.xy * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat28.xy = fract(u_xlat28.xy); u_xlat55.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati92].xy * u_xlat28.xy + _AdditionalLightsCookieAtlasUVRects[u_xlati92].zw; } else { u_xlat5 = vs_TEXCOORD1.yyyy * hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 1)]; u_xlat5 = hlslcc_mtx4x4_AdditionalLightsWorldToLights[u_xlati25] * vs_TEXCOORD1.xxxx + u_xlat5; u_xlat5 = hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 2)] * vs_TEXCOORD1.zzzz + u_xlat5; u_xlat5 = u_xlat5 + hlslcc_mtx4x4_AdditionalLightsWorldToLights[(u_xlati25 + 3)]; u_xlat28.xyz = u_xlat5.xyz / u_xlat5.www; u_xlat113 = dot(u_xlat28.xyz, u_xlat28.xyz); u_xlat113 = inversesqrt(u_xlat113); u_xlat28.xyz = vec3(u_xlat113) * u_xlat28.xyz; u_xlat113 = dot(abs(u_xlat28.xyz), vec3(1.0, 1.0, 1.0)); u_xlat113 = max(u_xlat113, 9.99999997e-07); u_xlat113 = float(1.0) / float(u_xlat113); u_xlat29.xyz = vec3(u_xlat113) * u_xlat28.zxy; u_xlat29.x = (-u_xlat29.x); u_xlat29.x = clamp(u_xlat29.x, 0.0, 1.0); u_xlatb25.xw = greaterThanEqual(u_xlat29.yyyz, vec4(0.0, 0.0, 0.0, 0.0)).xw; u_xlat25.x = (u_xlatb25.x) ? u_xlat29.x : (-u_xlat29.x); u_xlat25.w = (u_xlatb25.w) ? u_xlat29.x : (-u_xlat29.x); u_xlat25.xw = u_xlat28.xy * vec2(u_xlat113) + u_xlat25.xw; u_xlat25.xw = u_xlat25.xw * vec2(0.5, 0.5) + vec2(0.5, 0.5); u_xlat25.xw = clamp(u_xlat25.xw, 0.0, 1.0); u_xlat55.xy = _AdditionalLightsCookieAtlasUVRects[u_xlati92].xy * u_xlat25.xw + _AdditionalLightsCookieAtlasUVRects[u_xlati92].zw; } } u_xlat16_5 = textureLod(_AdditionalLightsCookieAtlasTexture, u_xlat55.xy, 0.0); u_xlat16_4.x = (u_xlatb22.y) ? u_xlat16_5.w : u_xlat16_5.x; u_xlat16_12.xyz = (u_xlatb22.x) ? u_xlat16_5.xyz : u_xlat16_4.xxx; } else { u_xlat16_12.x = float(1.0); u_xlat16_12.y = float(1.0); u_xlat16_12.z = float(1.0); } u_xlat16_12.xyz = u_xlat16_12.xyz * _AdditionalLightsColor[u_xlati92].xyz; u_xlat16_12.xyz = vec3(u_xlat0) * u_xlat16_12.xyz; u_xlat92 = u_xlat16_93 * u_xlat82; u_xlat16_93 = dot(u_xlat2.xyz, u_xlat24.xyz); u_xlat16_93 = clamp(u_xlat16_93, 0.0, 1.0); u_xlat16_93 = u_xlat92 * u_xlat16_93; u_xlat16_12.xyz = vec3(u_xlat16_93) * u_xlat16_12.xyz; u_xlat23.xyz = u_xlat23.xyz * vec3(u_xlat112) + u_xlat16_3.xyz; u_xlat92 = dot(u_xlat23.xyz, u_xlat23.xyz); u_xlat92 = max(u_xlat92, 1.17549435e-38); u_xlat92 = inversesqrt(u_xlat92); u_xlat23.xyz = vec3(u_xlat92) * u_xlat23.xyz; u_xlat92 = dot(u_xlat2.xyz, u_xlat23.xyz); u_xlat92 = clamp(u_xlat92, 0.0, 1.0); u_xlat82 = dot(u_xlat24.xyz, u_xlat23.xyz); u_xlat82 = clamp(u_xlat82, 0.0, 1.0); u_xlat92 = u_xlat92 * u_xlat92; u_xlat92 = u_xlat92 * u_xlat16_10.x + 1.00001001; u_xlat16_93 = u_xlat82 * u_xlat82; u_xlat92 = u_xlat92 * u_xlat92; u_xlat82 = max(u_xlat16_93, 0.100000001); u_xlat92 = u_xlat92 * u_xlat82; u_xlat92 = u_xlat16_38 * u_xlat92; u_xlat92 = u_xlat16_8 / u_xlat92; u_xlat16_93 = u_xlat92 + -6.10351562e-05; u_xlat16_93 = max(u_xlat16_93, 0.0); u_xlat16_93 = min(u_xlat16_93, 1000.0); u_xlat16_13.xyz = u_xlat16_7.xyz * vec3(u_xlat16_93) + u_xlat16_34.xyz; u_xlat16_11.xyz = u_xlat16_13.xyz * u_xlat16_12.xyz + u_xlat16_11.xyz; } u_xlat16_3.xyz = u_xlat16_40.xyz * vec3(u_xlat16_68) + u_xlat16_9.xyz; u_xlat16_1.xyz = u_xlat16_11.xyz + u_xlat16_3.xyz; u_xlat16_0 = min(u_xlat16_1, vec4(65504.0, 65504.0, 65504.0, 65504.0)); u_xlatb2 = _Surface==1.0; SV_Target0.w = (u_xlatb2) ? u_xlat16_0.w : 1.0; SV_Target0.xyz = u_xlat16_0.xyz; return; } #endif $Globals_GlossyEnvironmentCubeMap_HDR_ScaledScreenParams_GlobalMipBias _MainLightPosition0_MainLightColor@_AmbientOcclusionParamP_AdditionalLightsCount`_AdditionalLightsPositionp_AdditionalLightsColorp_AdditionalLightsAttenuationp_AdditionalLightsSpotDirp_WorldSpaceCameraPospunity_OrthoParams_MainLightShadowOffset0_MainLightShadowOffset1_MainLightShadowParams_MainLightShadowmapSize_AdditionalShadowOffset0_AdditionalShadowOffset1 _AdditionalShadowFadeParams0_AdditionalShadowmapSize@_AdditionalShadowParamsP!_AdditionalLightsCookieEnableBits _MainLightCookieTextureFormat )_AdditionalLightsCookieAtlasTextureFormat #_AdditionalLightsCookieAtlasUVRects_AdditionalLightsLightTypes unity_MatrixV_AdditionalLightsWorldToShadowP_MainLightWorldToLightP _AdditionalLightsWorldToLights UnityPerMaterial| _BaseMap_ST _BaseColor _SmoothnessT _MetallicX _BumpScale\_Surfacex UnityPerDrawunity_WorldTransformParamsunity_LightDataunity_LightIndicesunity_SpecCube0_HDRunity_SpecCube1_HDRunity_SpecCube0_BoxMaxunity_SpecCube0_BoxMin unity_SpecCube0_ProbePosition0unity_SpecCube1_BoxMax@unity_SpecCube1_BoxMinPunity_SpecCube1_ProbePosition` unity_SHAr unity_SHAg unity_SHAb unity_SHBr unity_SHBg unity_SHBb unity_SHCunity_ObjectToWorldunity_WorldToObject@ _GlossyEnvironmentCubeMapunity_SpecCube0unity_SpecCube1_BaseMap_BumpMap_ScreenSpaceOcclusionTexture_MainLightShadowmapTexture!_AdditionalLightsShadowmapTexture_MainLightCookieTexture #_AdditionalLightsCookieAtlasTexture $GlobalsUnityPerMaterial UnityPerDraw