¼(ºu  SHADOWS_DEPTH SHADOWS_SOFTSPOTƒ$#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 _ProjectionParams; uniform vec4 hlslcc_mtx4x4unity_ObjectToWorld[4]; uniform vec4 hlslcc_mtx4x4unity_MatrixV[4]; uniform vec4 hlslcc_mtx4x4unity_MatrixVP[4]; uniform float _LightAsQuad; in highp vec4 in_POSITION0; in highp vec3 in_NORMAL0; out highp vec4 vs_TEXCOORD0; out highp vec3 vs_TEXCOORD1; vec4 u_xlat0; vec4 u_xlat1; vec4 u_xlat2; void main() { u_xlat0 = in_POSITION0.yyyy * hlslcc_mtx4x4unity_ObjectToWorld[1]; u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0; u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0; u_xlat0 = u_xlat0 + hlslcc_mtx4x4unity_ObjectToWorld[3]; 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; u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1; gl_Position = u_xlat1; u_xlat1.y = u_xlat1.y * _ProjectionParams.x; u_xlat2.xzw = u_xlat1.xwy * vec3(0.5, 0.5, 0.5); vs_TEXCOORD0.zw = u_xlat1.zw; vs_TEXCOORD0.xy = u_xlat2.zz + u_xlat2.xw; u_xlat1.xyz = u_xlat0.yyy * hlslcc_mtx4x4unity_MatrixV[1].xyz; u_xlat1.xyz = hlslcc_mtx4x4unity_MatrixV[0].xyz * u_xlat0.xxx + u_xlat1.xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_MatrixV[2].xyz * u_xlat0.zzz + u_xlat1.xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_MatrixV[3].xyz * u_xlat0.www + u_xlat0.xyz; u_xlat1.xyz = u_xlat0.xyz * vec3(-1.0, -1.0, 1.0); u_xlat0.xyz = (-u_xlat0.xyz) * vec3(-1.0, -1.0, 1.0) + in_NORMAL0.xyz; vs_TEXCOORD1.xyz = vec3(_LightAsQuad) * u_xlat0.xyz + u_xlat1.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 uniform vec3 _WorldSpaceCameraPos; uniform vec4 _ProjectionParams; uniform vec4 _ZBufferParams; uniform vec4 hlslcc_mtx4x4unity_CameraToWorld[4]; uniform vec4 hlslcc_mtx4x4unity_WorldToShadow[16]; uniform vec4 _LightShadowData; uniform vec4 unity_ShadowFadeCenterAndType; uniform vec4 _LightPos; uniform vec4 _LightColor; uniform vec4 hlslcc_mtx4x4unity_WorldToLight[4]; uniform vec4 _ShadowOffsets[4]; UNITY_LOCATION(0) uniform highp sampler2D _CameraDepthTexture; UNITY_LOCATION(1) uniform highp sampler2D _LightTexture0; UNITY_LOCATION(2) uniform highp sampler2D _LightTextureB0; UNITY_LOCATION(3) uniform mediump sampler2D _CameraGBufferTexture0; UNITY_LOCATION(4) uniform mediump sampler2D _CameraGBufferTexture1; UNITY_LOCATION(5) uniform mediump sampler2D _CameraGBufferTexture2; UNITY_LOCATION(6) uniform highp sampler2D _ShadowMapTexture; UNITY_LOCATION(7) uniform highp sampler2DShadow hlslcc_zcmp_ShadowMapTexture; in highp vec4 vs_TEXCOORD0; in highp vec3 vs_TEXCOORD1; layout(location = 0) out mediump vec4 SV_Target0; vec4 u_xlat0; mediump vec4 u_xlat16_0; vec2 u_xlat1; mediump vec4 u_xlat16_1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; mediump vec4 u_xlat16_4; vec3 u_xlat5; mediump vec3 u_xlat16_5; mediump float u_xlat16_6; vec3 u_xlat7; float u_xlat14; bool u_xlatb14; float u_xlat15; float u_xlat21; float u_xlat22; float u_xlat23; void main() { u_xlat0.x = _ProjectionParams.z / vs_TEXCOORD1.z; u_xlat0.xyz = u_xlat0.xxx * vs_TEXCOORD1.xyz; u_xlat1.xy = vs_TEXCOORD0.xy / vs_TEXCOORD0.ww; u_xlat21 = texture(_CameraDepthTexture, u_xlat1.xy).x; u_xlat21 = _ZBufferParams.x * u_xlat21 + _ZBufferParams.y; u_xlat21 = float(1.0) / u_xlat21; u_xlat2.xyz = vec3(u_xlat21) * u_xlat0.xyz; u_xlat3.xyz = u_xlat2.yyy * hlslcc_mtx4x4unity_CameraToWorld[1].xyz; u_xlat2.xyw = hlslcc_mtx4x4unity_CameraToWorld[0].xyz * u_xlat2.xxx + u_xlat3.xyz; u_xlat2.xyw = hlslcc_mtx4x4unity_CameraToWorld[2].xyz * u_xlat2.zzz + u_xlat2.xyw; u_xlat2.xyw = u_xlat2.xyw + hlslcc_mtx4x4unity_CameraToWorld[3].xyz; u_xlat3 = u_xlat2.yyyy * hlslcc_mtx4x4unity_WorldToShadow[1]; u_xlat3 = hlslcc_mtx4x4unity_WorldToShadow[0] * u_xlat2.xxxx + u_xlat3; u_xlat3 = hlslcc_mtx4x4unity_WorldToShadow[2] * u_xlat2.wwww + u_xlat3; u_xlat3 = u_xlat3 + hlslcc_mtx4x4unity_WorldToShadow[3]; u_xlat3.xyz = u_xlat3.xyz / u_xlat3.www; u_xlat4.xyz = u_xlat3.xyz + _ShadowOffsets[0].xyz; vec3 txVec0 = vec3(u_xlat4.xy,u_xlat4.z); u_xlat4.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0); u_xlat5.xyz = u_xlat3.xyz + _ShadowOffsets[1].xyz; vec3 txVec1 = vec3(u_xlat5.xy,u_xlat5.z); u_xlat4.y = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0); u_xlat5.xyz = u_xlat3.xyz + _ShadowOffsets[2].xyz; u_xlat3.xyz = u_xlat3.xyz + _ShadowOffsets[3].xyz; vec3 txVec2 = vec3(u_xlat3.xy,u_xlat3.z); u_xlat4.w = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0); vec3 txVec3 = vec3(u_xlat5.xy,u_xlat5.z); u_xlat4.z = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0); u_xlat0.x = dot(u_xlat4, vec4(0.25, 0.25, 0.25, 0.25)); u_xlat7.x = (-_LightShadowData.x) + 1.0; u_xlat0.x = u_xlat0.x * u_xlat7.x + _LightShadowData.x; u_xlat16_6 = (-u_xlat0.x) + 1.0; u_xlat3.xyz = u_xlat2.xyw + (-unity_ShadowFadeCenterAndType.xyz); u_xlat7.x = dot(u_xlat3.xyz, u_xlat3.xyz); u_xlat7.x = sqrt(u_xlat7.x); u_xlat7.x = (-u_xlat0.z) * u_xlat21 + u_xlat7.x; u_xlat7.x = unity_ShadowFadeCenterAndType.w * u_xlat7.x + u_xlat2.z; u_xlat7.x = u_xlat7.x * _LightShadowData.z + _LightShadowData.w; u_xlat7.x = clamp(u_xlat7.x, 0.0, 1.0); u_xlat16_6 = u_xlat7.x * u_xlat16_6 + u_xlat0.x; u_xlat0.xyz = u_xlat2.yyy * hlslcc_mtx4x4unity_WorldToLight[1].xyw; u_xlat0.xyz = hlslcc_mtx4x4unity_WorldToLight[0].xyw * u_xlat2.xxx + u_xlat0.xyz; u_xlat0.xyz = hlslcc_mtx4x4unity_WorldToLight[2].xyw * u_xlat2.www + u_xlat0.xyz; u_xlat0.xyz = u_xlat0.xyz + hlslcc_mtx4x4unity_WorldToLight[3].xyw; u_xlat0.xy = u_xlat0.xy / u_xlat0.zz; u_xlatb14 = u_xlat0.z<0.0; u_xlat14 = u_xlatb14 ? 1.0 : float(0.0); u_xlat0.x = texture(_LightTexture0, u_xlat0.xy, -8.0).w; u_xlat0.x = u_xlat14 * u_xlat0.x; u_xlat7.xyz = (-u_xlat2.xyw) + _LightPos.xyz; u_xlat2.xyz = u_xlat2.xyw + (-_WorldSpaceCameraPos.xyz); u_xlat15 = dot(u_xlat7.xyz, u_xlat7.xyz); u_xlat22 = u_xlat15 * _LightPos.w; u_xlat15 = inversesqrt(u_xlat15); u_xlat7.xyz = u_xlat7.xyz * vec3(u_xlat15); u_xlat15 = texture(_LightTextureB0, vec2(u_xlat22)).x; u_xlat0.x = u_xlat0.x * u_xlat15; u_xlat0.x = u_xlat16_6 * u_xlat0.x; u_xlat3.xyz = u_xlat0.xxx * _LightColor.xyz; u_xlat0.x = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat0.x = inversesqrt(u_xlat0.x); u_xlat2.xyz = (-u_xlat2.xyz) * u_xlat0.xxx + u_xlat7.xyz; u_xlat0.x = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat0.x = max(u_xlat0.x, 0.00100000005); u_xlat0.x = inversesqrt(u_xlat0.x); u_xlat2.xyz = u_xlat0.xxx * u_xlat2.xyz; u_xlat0.x = dot(u_xlat7.xyz, u_xlat2.xyz); u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0); u_xlat0.x = u_xlat0.x * u_xlat0.x; u_xlat0.x = max(u_xlat0.x, 0.100000001); u_xlat16_4 = texture(_CameraGBufferTexture1, u_xlat1.xy); u_xlat15 = (-u_xlat16_4.w) + 1.0; u_xlat22 = u_xlat15 * u_xlat15 + 0.5; u_xlat15 = u_xlat15 * u_xlat15; u_xlat0.x = u_xlat0.x * u_xlat22; u_xlat16_5.xyz = texture(_CameraGBufferTexture2, u_xlat1.xy).xyz; u_xlat16_1.xyw = texture(_CameraGBufferTexture0, u_xlat1.xy).xyz; u_xlat5.xyz = u_xlat16_5.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0); u_xlat23 = dot(u_xlat5.xyz, u_xlat5.xyz); u_xlat23 = inversesqrt(u_xlat23); u_xlat5.xyz = vec3(u_xlat23) * u_xlat5.xyz; u_xlat2.x = dot(u_xlat5.xyz, u_xlat2.xyz); u_xlat2.x = clamp(u_xlat2.x, 0.0, 1.0); u_xlat7.x = dot(u_xlat5.xyz, u_xlat7.xyz); u_xlat7.x = clamp(u_xlat7.x, 0.0, 1.0); u_xlat14 = u_xlat2.x * u_xlat2.x; u_xlat21 = u_xlat15 * u_xlat15 + -1.0; u_xlat15 = u_xlat15 * u_xlat15; u_xlat14 = u_xlat14 * u_xlat21 + 1.00001001; u_xlat14 = u_xlat14 * u_xlat14; u_xlat0.x = u_xlat14 * u_xlat0.x; u_xlat0.x = u_xlat0.x * 4.0; u_xlat0.x = u_xlat15 / u_xlat0.x; u_xlat0.x = u_xlat0.x + -9.99999975e-05; u_xlat0.x = max(u_xlat0.x, 0.0); u_xlat0.x = min(u_xlat0.x, 100.0); u_xlat0.xzw = u_xlat0.xxx * u_xlat16_4.xyz + u_xlat16_1.xyw; u_xlat0.xzw = u_xlat3.xyz * u_xlat0.xzw; u_xlat0.xyz = u_xlat7.xxx * u_xlat0.xzw; u_xlat16_0.xyz = (-u_xlat0.xyz); u_xlat16_0.w = -1.0; SV_Target0 = exp2(u_xlat16_0); return; } #endif $Globals0_WorldSpaceCameraPos_ProjectionParams_ZBufferParams _LightAsQuadÐ_LightShadowDatapunity_ShadowFadeCenterAndType€ _LightPos _LightColor _ShadowOffsetsðunity_CameraToWorld0 unity_MatrixVPunity_WorldToShadowpunity_MatrixVPunity_WorldToLight°_CameraDepthTexture_LightTexture0_LightTextureB0_CameraGBufferTexture0_CameraGBufferTexture1_CameraGBufferTexture2_ShadowMapTexture$Globals