Dlu _MAIN_LIGHT_SHADOWS_CASCADE_MIXED_LIGHTING_SUBTRACTIVE _SHADOWS_SOFTf#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 _MainLightPosition; uniform mediump vec4 _MainLightColor; uniform vec4 hlslcc_mtx4x4unity_MatrixVP[4]; uniform vec4 hlslcc_mtx4x4_MainLightWorldToShadow[20]; uniform vec4 _CascadeShadowSplitSpheres0; uniform vec4 _CascadeShadowSplitSpheres1; uniform vec4 _CascadeShadowSplitSpheres2; uniform vec4 _CascadeShadowSplitSpheres3; uniform vec4 _CascadeShadowSplitSphereRadii; uniform vec4 _MainTex_ST; #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 Xhlslcc_UnusedXunity_LightIndices[2]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_ProbesOcclusion; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SpecCube0_HDR; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SpecCube1_HDR; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_BoxMax; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_BoxMin; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_ProbePosition; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube1_BoxMax; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube1_BoxMin; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_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 in highp vec4 in_POSITION0; in highp vec2 in_TEXCOORD0; in mediump vec3 in_NORMAL0; in mediump vec4 in_COLOR0; out highp vec2 vs_TEXCOORD0; out mediump vec3 vs_TEXCOORD1; out mediump vec4 vs_TEXCOORD2; out mediump vec4 vs_TEXCOORD3; out highp vec4 vs_TEXCOORD4; out mediump vec3 vs_TEXCOORD5; vec4 u_xlat0; vec4 u_xlat1; mediump vec4 u_xlat16_1; bvec4 u_xlatb1; vec3 u_xlat2; mediump vec3 u_xlat16_3; float u_xlat12; int u_xlati12; uint u_xlatu12; void main() { vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw; vs_TEXCOORD1.xyz = vec3(0.0, 0.0, 0.0); vs_TEXCOORD2 = in_COLOR0; 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_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz); u_xlat12 = max(u_xlat12, 1.17549435e-38); u_xlat12 = inversesqrt(u_xlat12); u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz; u_xlat16_1.x = dot(u_xlat0.xyz, _MainLightPosition.xyz); u_xlat16_1.x = clamp(u_xlat16_1.x, 0.0, 1.0); vs_TEXCOORD5.xyz = u_xlat0.xyz; u_xlat0.xyz = _MainLightColor.xyz * unity_LightData.zzz; vs_TEXCOORD3.xyz = u_xlat16_1.xxx * u_xlat0.xyz; vs_TEXCOORD3.w = 0.0; 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_xlat2.xyz = u_xlat0.xyz + (-_CascadeShadowSplitSpheres0.xyz); u_xlat1.x = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat2.xyz = u_xlat0.xyz + (-_CascadeShadowSplitSpheres1.xyz); u_xlat1.y = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat2.xyz = u_xlat0.xyz + (-_CascadeShadowSplitSpheres2.xyz); u_xlat1.z = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat2.xyz = u_xlat0.xyz + (-_CascadeShadowSplitSpheres3.xyz); u_xlat1.w = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlatb1 = lessThan(u_xlat1, _CascadeShadowSplitSphereRadii); u_xlat16_3.x = (u_xlatb1.x) ? float(-1.0) : float(-0.0); u_xlat16_3.y = (u_xlatb1.y) ? float(-1.0) : float(-0.0); u_xlat16_3.z = (u_xlatb1.z) ? float(-1.0) : float(-0.0); u_xlat16_1.x = (u_xlatb1.x) ? float(1.0) : float(0.0); u_xlat16_1.y = (u_xlatb1.y) ? float(1.0) : float(0.0); u_xlat16_1.z = (u_xlatb1.z) ? float(1.0) : float(0.0); u_xlat16_1.w = (u_xlatb1.w) ? float(1.0) : float(0.0); u_xlat16_3.xyz = u_xlat16_3.xyz + u_xlat16_1.yzw; u_xlat16_1.yzw = max(u_xlat16_3.xyz, vec3(0.0, 0.0, 0.0)); u_xlat16_3.x = dot(u_xlat16_1, vec4(4.0, 3.0, 2.0, 1.0)); u_xlat16_3.x = (-u_xlat16_3.x) + 4.0; u_xlatu12 = uint(u_xlat16_3.x); u_xlati12 = int(int(u_xlatu12) << (2 & int(0x1F))); u_xlat2.xyz = u_xlat0.yyy * hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati12 + 1)].xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[u_xlati12].xyz * u_xlat0.xxx + u_xlat2.xyz; u_xlat2.xyz = hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati12 + 2)].xyz * u_xlat0.zzz + u_xlat2.xyz; vs_TEXCOORD4.xyz = u_xlat2.xyz + hlslcc_mtx4x4_MainLightWorldToShadow[(u_xlati12 + 3)].xyz; vs_TEXCOORD4.w = 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 uniform vec2 _GlobalMipBias; uniform vec4 _MainLightShadowOffset0; uniform vec4 _MainLightShadowOffset1; uniform vec4 _MainLightShadowParams; uniform vec4 _MainLightShadowmapSize; #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 Xhlslcc_UnusedXunity_LightIndices[2]; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_ProbesOcclusion; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SpecCube0_HDR; UNITY_UNIFORM mediump vec4 Xhlslcc_UnusedXunity_SpecCube1_HDR; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_BoxMax; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_BoxMin; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube0_ProbePosition; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube1_BoxMax; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_SpecCube1_BoxMin; UNITY_UNIFORM vec4 Xhlslcc_UnusedXunity_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 UNITY_LOCATION(0) uniform mediump sampler2D _MainLightShadowmapTexture; UNITY_LOCATION(1) uniform mediump sampler2DShadow hlslcc_zcmp_MainLightShadowmapTexture; UNITY_LOCATION(2) uniform mediump sampler2D _MainTex; in highp vec2 vs_TEXCOORD0; in mediump vec4 vs_TEXCOORD2; in mediump vec4 vs_TEXCOORD3; in highp vec4 vs_TEXCOORD4; in mediump vec3 vs_TEXCOORD5; layout(location = 0) out mediump vec4 SV_Target0; layout(location = 1) out mediump vec4 SV_Target1; layout(location = 2) out mediump vec4 SV_Target2; layout(location = 3) out mediump vec4 SV_Target3; mediump vec4 u_xlat16_0; vec4 u_xlat1; mediump vec4 u_xlat16_1; mediump vec4 u_xlat16_2; mediump vec4 u_xlat16_3; bool u_xlatb3; mediump vec3 u_xlat16_4; mediump vec4 u_xlat16_5; mediump vec4 u_xlat16_6; mediump vec4 u_xlat16_7; mediump vec4 u_xlat16_8; mediump vec4 u_xlat16_9; float u_xlat10; mediump vec4 u_xlat16_10; mediump vec4 u_xlat16_11; mediump vec2 u_xlat16_12; mediump vec4 u_xlat16_13; mediump vec4 u_xlat16_14; float u_xlat15; mediump vec3 u_xlat16_15; bool u_xlatb15; mediump vec2 u_xlat16_21; float u_xlat26; mediump float u_xlat16_26; float u_xlat31; mediump float u_xlat16_31; bool u_xlatb31; mediump vec2 u_xlat16_36; mediump vec2 u_xlat16_37; mediump vec2 u_xlat16_38; mediump vec2 u_xlat16_41; float u_xlat48; mediump float u_xlat16_48; void main() { u_xlat16_0.xyz = vs_TEXCOORD5.xyz; u_xlat16_0.w = 1.0; u_xlat16_1.x = dot(unity_SHAr, u_xlat16_0); u_xlat16_1.y = dot(unity_SHAg, u_xlat16_0); u_xlat16_1.z = dot(unity_SHAb, u_xlat16_0); u_xlat16_0 = vs_TEXCOORD5.yzzx * vs_TEXCOORD5.xyzz; u_xlat16_2.x = dot(unity_SHBr, u_xlat16_0); u_xlat16_2.y = dot(unity_SHBg, u_xlat16_0); u_xlat16_2.z = dot(unity_SHBb, u_xlat16_0); u_xlat16_0.x = vs_TEXCOORD5.y * vs_TEXCOORD5.y; u_xlat16_0.x = vs_TEXCOORD5.x * vs_TEXCOORD5.x + (-u_xlat16_0.x); u_xlat16_0.xyz = unity_SHC.xyz * u_xlat16_0.xxx + u_xlat16_2.xyz; u_xlat16_0.xyz = u_xlat16_0.xyz + u_xlat16_1.xyz; u_xlat16_0.xyz = max(u_xlat16_0.xyz, vec3(0.0, 0.0, 0.0)); u_xlatb3 = 0.0<_MainLightShadowParams.y; if(u_xlatb3){ u_xlatb3 = _MainLightShadowParams.y==1.0; if(u_xlatb3){ u_xlat1 = vs_TEXCOORD4.xyxy + _MainLightShadowOffset0; vec3 txVec0 = vec3(u_xlat1.xy,vs_TEXCOORD4.z); u_xlat16_2.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec0, 0.0); vec3 txVec1 = vec3(u_xlat1.zw,vs_TEXCOORD4.z); u_xlat16_2.y = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec1, 0.0); u_xlat1 = vs_TEXCOORD4.xyxy + _MainLightShadowOffset1; vec3 txVec2 = vec3(u_xlat1.xy,vs_TEXCOORD4.z); u_xlat16_2.z = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec2, 0.0); vec3 txVec3 = vec3(u_xlat1.zw,vs_TEXCOORD4.z); u_xlat16_2.w = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec3, 0.0); u_xlat16_48 = dot(u_xlat16_2, vec4(0.25, 0.25, 0.25, 0.25)); } else { u_xlatb3 = _MainLightShadowParams.y==2.0; if(u_xlatb3){ u_xlat16_4.xy = vs_TEXCOORD4.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_4.xy = floor(u_xlat16_4.xy); u_xlat16_36.xy = vs_TEXCOORD4.xy * _MainLightShadowmapSize.zw + (-u_xlat16_4.xy); u_xlat16_1 = u_xlat16_36.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_2 = u_xlat16_1.xxzz * u_xlat16_1.xxzz; u_xlat16_5.xy = u_xlat16_2.yw * vec2(0.0799999982, 0.0799999982); u_xlat16_37.xy = u_xlat16_2.xz * vec2(0.5, 0.5) + (-u_xlat16_36.xy); u_xlat16_6.xy = (-u_xlat16_36.xy) + vec2(1.0, 1.0); u_xlat16_38.xy = min(u_xlat16_36.xy, vec2(0.0, 0.0)); u_xlat16_38.xy = (-u_xlat16_38.xy) * u_xlat16_38.xy + u_xlat16_6.xy; u_xlat16_36.xy = max(u_xlat16_36.xy, vec2(0.0, 0.0)); u_xlat16_36.xy = (-u_xlat16_36.xy) * u_xlat16_36.xy + u_xlat16_1.yw; u_xlat16_38.xy = u_xlat16_38.xy + vec2(1.0, 1.0); u_xlat16_36.xy = u_xlat16_36.xy + vec2(1.0, 1.0); u_xlat16_2.xy = u_xlat16_37.xy * vec2(0.159999996, 0.159999996); u_xlat16_3.xy = u_xlat16_6.xy * vec2(0.159999996, 0.159999996); u_xlat16_6.xy = u_xlat16_38.xy * vec2(0.159999996, 0.159999996); u_xlat16_7.xy = u_xlat16_36.xy * vec2(0.159999996, 0.159999996); u_xlat16_36.xy = u_xlat16_1.yw * vec2(0.159999996, 0.159999996); u_xlat16_2.z = u_xlat16_6.x; u_xlat16_2.w = u_xlat16_36.x; u_xlat16_3.z = u_xlat16_7.x; u_xlat16_3.w = u_xlat16_5.x; u_xlat16_1 = u_xlat16_2.zwxz + u_xlat16_3.zwxz; u_xlat16_6.z = u_xlat16_2.y; u_xlat16_6.w = u_xlat16_36.y; u_xlat16_7.z = u_xlat16_3.y; u_xlat16_7.w = u_xlat16_5.y; u_xlat16_5.xyz = u_xlat16_6.zyw + u_xlat16_7.zyw; u_xlat16_6.xyz = u_xlat16_3.xzw / u_xlat16_1.zwy; u_xlat16_6.xyz = u_xlat16_6.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_7.xyz = u_xlat16_7.zyw / u_xlat16_5.xyz; u_xlat16_7.xyz = u_xlat16_7.xyz + vec3(-2.5, -0.5, 1.5); u_xlat16_2.xyz = u_xlat16_6.yxz * _MainLightShadowmapSize.xxx; u_xlat16_3.xyz = u_xlat16_7.xyz * _MainLightShadowmapSize.yyy; u_xlat16_2.w = u_xlat16_3.x; u_xlat16_6 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_2.ywxw; u_xlat16_36.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_2.zw; u_xlat16_3.w = u_xlat16_2.y; u_xlat16_2.yw = u_xlat16_3.yz; u_xlat16_7 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_2.xyzy; u_xlat16_3 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_3.wywz; u_xlat16_2 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_2.xwzw; u_xlat16_8 = u_xlat16_1.zwyz * u_xlat16_5.xxxy; u_xlat16_9 = u_xlat16_1 * u_xlat16_5.yyzz; u_xlat16_4.x = u_xlat16_1.y * u_xlat16_5.z; vec3 txVec4 = vec3(u_xlat16_6.xy,vs_TEXCOORD4.z); u_xlat16_10.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec4, 0.0); vec3 txVec5 = vec3(u_xlat16_6.zw,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec5, 0.0); u_xlat26 = u_xlat16_8.y * u_xlat16_26; u_xlat10 = u_xlat16_8.x * u_xlat16_10.x + u_xlat26; vec3 txVec6 = vec3(u_xlat16_36.xy,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec6, 0.0); u_xlat10 = u_xlat16_8.z * u_xlat16_26 + u_xlat10; vec3 txVec7 = vec3(u_xlat16_3.xy,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec7, 0.0); u_xlat10 = u_xlat16_8.w * u_xlat16_26 + u_xlat10; vec3 txVec8 = vec3(u_xlat16_7.xy,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec8, 0.0); u_xlat10 = u_xlat16_9.x * u_xlat16_26 + u_xlat10; vec3 txVec9 = vec3(u_xlat16_7.zw,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec9, 0.0); u_xlat10 = u_xlat16_9.y * u_xlat16_26 + u_xlat10; vec3 txVec10 = vec3(u_xlat16_3.zw,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec10, 0.0); u_xlat10 = u_xlat16_9.z * u_xlat16_26 + u_xlat10; vec3 txVec11 = vec3(u_xlat16_2.xy,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec11, 0.0); u_xlat10 = u_xlat16_9.w * u_xlat16_26 + u_xlat10; vec3 txVec12 = vec3(u_xlat16_2.zw,vs_TEXCOORD4.z); u_xlat16_26 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec12, 0.0); u_xlat48 = u_xlat16_4.x * u_xlat16_26 + u_xlat10; u_xlat16_48 = u_xlat48; } else { u_xlat16_4.xy = vs_TEXCOORD4.xy * _MainLightShadowmapSize.zw + vec2(0.5, 0.5); u_xlat16_4.xy = floor(u_xlat16_4.xy); u_xlat16_36.xy = vs_TEXCOORD4.xy * _MainLightShadowmapSize.zw + (-u_xlat16_4.xy); u_xlat16_1 = u_xlat16_36.xxyy + vec4(0.5, 1.0, 0.5, 1.0); u_xlat16_2 = u_xlat16_1.xxzz * u_xlat16_1.xxzz; u_xlat16_3.yw = u_xlat16_2.yw * vec2(0.0408160016, 0.0408160016); u_xlat16_5.xy = u_xlat16_2.xz * vec2(0.5, 0.5) + (-u_xlat16_36.xy); u_xlat16_37.xy = (-u_xlat16_36.xy) + vec2(1.0, 1.0); u_xlat16_6.xy = min(u_xlat16_36.xy, vec2(0.0, 0.0)); u_xlat16_37.xy = (-u_xlat16_6.xy) * u_xlat16_6.xy + u_xlat16_37.xy; u_xlat16_6.xy = max(u_xlat16_36.xy, vec2(0.0, 0.0)); u_xlat16_6.xy = (-u_xlat16_6.xy) * u_xlat16_6.xy + u_xlat16_1.yw; u_xlat16_37.xy = u_xlat16_37.xy + vec2(2.0, 2.0); u_xlat16_6.xy = u_xlat16_6.xy + vec2(2.0, 2.0); u_xlat16_1.z = u_xlat16_6.x * 0.0816320032; u_xlat16_2.xy = u_xlat16_5.yx * vec2(0.0816320032, 0.0816320032); u_xlat16_5.xy = u_xlat16_37.xy * vec2(0.0816320032, 0.0816320032); u_xlat16_2.z = u_xlat16_6.y * 0.0816320032; u_xlat16_1.x = u_xlat16_2.y; u_xlat16_1.yw = u_xlat16_36.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_6.xz = u_xlat16_36.xx * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_6.y = u_xlat16_5.x; u_xlat16_6.w = u_xlat16_3.y; u_xlat16_1 = u_xlat16_1 + u_xlat16_6; u_xlat16_2.yw = u_xlat16_36.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.163264006, 0.0816320032); u_xlat16_3.xz = u_xlat16_36.yy * vec2(-0.0816320032, 0.0816320032) + vec2(0.0816320032, 0.163264006); u_xlat16_3.y = u_xlat16_5.y; u_xlat16_2 = u_xlat16_2 + u_xlat16_3; u_xlat16_5 = u_xlat16_6 / u_xlat16_1; u_xlat16_5 = u_xlat16_5 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_3 = u_xlat16_3 / u_xlat16_2; u_xlat16_3 = u_xlat16_3 + vec4(-3.5, -1.5, 0.5, 2.5); u_xlat16_5 = u_xlat16_5.wxyz * _MainLightShadowmapSize.xxxx; u_xlat16_3 = u_xlat16_3.xwyz * _MainLightShadowmapSize.yyyy; u_xlat16_6.xzw = u_xlat16_5.yzw; u_xlat16_6.y = u_xlat16_3.x; u_xlat16_7 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_36.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_6.wy; u_xlat16_5.y = u_xlat16_6.y; u_xlat16_6.y = u_xlat16_3.z; u_xlat16_8 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_9.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_6.wy; u_xlat16_5.z = u_xlat16_6.y; u_xlat16_10 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_5.xyxz; u_xlat16_6.y = u_xlat16_3.w; u_xlat16_11 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_6.xyzy; u_xlat16_21.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_6.wy; u_xlat16_5.w = u_xlat16_6.y; u_xlat16_41.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_5.xw; u_xlat16_3.xzw = u_xlat16_6.xzw; u_xlat16_6 = u_xlat16_4.xyxy * _MainLightShadowmapSize.xyxy + u_xlat16_3.xyzy; u_xlat16_12.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_3.wy; u_xlat16_3.x = u_xlat16_5.x; u_xlat16_4.xy = u_xlat16_4.xy * _MainLightShadowmapSize.xy + u_xlat16_3.xy; u_xlat16_3 = u_xlat16_1 * u_xlat16_2.xxxx; u_xlat16_13 = u_xlat16_1 * u_xlat16_2.yyyy; u_xlat16_14 = u_xlat16_1 * u_xlat16_2.zzzz; u_xlat16_1 = u_xlat16_1 * u_xlat16_2.wwww; vec3 txVec13 = vec3(u_xlat16_7.xy,vs_TEXCOORD4.z); u_xlat16_15.x = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec13, 0.0); vec3 txVec14 = vec3(u_xlat16_7.zw,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec14, 0.0); u_xlat31 = u_xlat16_3.y * u_xlat16_31; u_xlat15 = u_xlat16_3.x * u_xlat16_15.x + u_xlat31; vec3 txVec15 = vec3(u_xlat16_36.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec15, 0.0); u_xlat15 = u_xlat16_3.z * u_xlat16_31 + u_xlat15; vec3 txVec16 = vec3(u_xlat16_10.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec16, 0.0); u_xlat15 = u_xlat16_3.w * u_xlat16_31 + u_xlat15; vec3 txVec17 = vec3(u_xlat16_8.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec17, 0.0); u_xlat15 = u_xlat16_13.x * u_xlat16_31 + u_xlat15; vec3 txVec18 = vec3(u_xlat16_8.zw,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec18, 0.0); u_xlat15 = u_xlat16_13.y * u_xlat16_31 + u_xlat15; vec3 txVec19 = vec3(u_xlat16_9.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec19, 0.0); u_xlat15 = u_xlat16_13.z * u_xlat16_31 + u_xlat15; vec3 txVec20 = vec3(u_xlat16_10.zw,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec20, 0.0); u_xlat15 = u_xlat16_13.w * u_xlat16_31 + u_xlat15; vec3 txVec21 = vec3(u_xlat16_11.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec21, 0.0); u_xlat15 = u_xlat16_14.x * u_xlat16_31 + u_xlat15; vec3 txVec22 = vec3(u_xlat16_11.zw,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec22, 0.0); u_xlat15 = u_xlat16_14.y * u_xlat16_31 + u_xlat15; vec3 txVec23 = vec3(u_xlat16_21.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec23, 0.0); u_xlat15 = u_xlat16_14.z * u_xlat16_31 + u_xlat15; vec3 txVec24 = vec3(u_xlat16_41.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec24, 0.0); u_xlat15 = u_xlat16_14.w * u_xlat16_31 + u_xlat15; vec3 txVec25 = vec3(u_xlat16_6.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec25, 0.0); u_xlat15 = u_xlat16_1.x * u_xlat16_31 + u_xlat15; vec3 txVec26 = vec3(u_xlat16_6.zw,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec26, 0.0); u_xlat15 = u_xlat16_1.y * u_xlat16_31 + u_xlat15; vec3 txVec27 = vec3(u_xlat16_12.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec27, 0.0); u_xlat15 = u_xlat16_1.z * u_xlat16_31 + u_xlat15; vec3 txVec28 = vec3(u_xlat16_4.xy,vs_TEXCOORD4.z); u_xlat16_31 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec28, 0.0); u_xlat48 = u_xlat16_1.w * u_xlat16_31 + u_xlat15; u_xlat16_48 = u_xlat48; } } } else { vec3 txVec29 = vec3(vs_TEXCOORD4.xy,vs_TEXCOORD4.z); u_xlat16_48 = textureLod(hlslcc_zcmp_MainLightShadowmapTexture, txVec29, 0.0); u_xlat16_48 = u_xlat16_48; } u_xlat16_4.x = (-_MainLightShadowParams.x) + 1.0; u_xlat16_48 = u_xlat16_48 * _MainLightShadowParams.x + u_xlat16_4.x; u_xlatb15 = 0.0>=vs_TEXCOORD4.z; u_xlatb31 = vs_TEXCOORD4.z>=1.0; u_xlatb15 = u_xlatb31 || u_xlatb15; u_xlat16_48 = (u_xlatb15) ? 1.0 : u_xlat16_48; u_xlat16_0.xyz = vs_TEXCOORD3.xyz * vec3(u_xlat16_48) + u_xlat16_0.xyz; u_xlat16_15.xyz = texture(_MainTex, vs_TEXCOORD0.xy, _GlobalMipBias.x).xyz; u_xlat16_4.xyz = u_xlat16_15.xyz * vs_TEXCOORD2.xyz; SV_Target3.xyz = u_xlat16_0.xyz * u_xlat16_4.xyz; SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0); SV_Target1 = vec4(0.0, 0.0, 0.0, 1.0); SV_Target2.xyz = vs_TEXCOORD5.xyz; SV_Target2.w = 0.0; SV_Target3.w = 1.0; return; } #endif $GlobalsP _GlobalMipBias_MainLightShadowOffset0_MainLightShadowOffset1 _MainLightShadowParams0_MainLightShadowmapSize@_CascadeShadowSplitSpheres0_CascadeShadowSplitSpheres1_CascadeShadowSplitSpheres2_CascadeShadowSplitSpheres3_CascadeShadowSplitSphereRadii _MainTex_ST_MainLightWorldToShadow` UnityPerDraw unity_LightData unity_SHAr unity_SHAg unity_SHAb unity_SHBr unity_SHBg unity_SHBb unity_SHCunity_ObjectToWorldunity_WorldToObject@_MainLightShadowmapTexture_MainTex$Globals UnityPerDraw