¼#ºu  DIRECTIONAL LIGHTPROBE_SHSHADOWS_SCREENç#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 mediump vec4 unity_SHBr; uniform mediump vec4 unity_SHBg; uniform mediump vec4 unity_SHBb; uniform mediump vec4 unity_SHC; uniform vec4 hlslcc_mtx4x4unity_ObjectToWorld[4]; uniform vec4 hlslcc_mtx4x4unity_WorldToObject[4]; uniform vec4 unity_WorldTransformParams; uniform vec4 hlslcc_mtx4x4unity_MatrixVP[4]; uniform vec4 _MainTex_ST; uniform vec4 _BumpMap_ST; in highp vec4 in_POSITION0; in highp vec4 in_TANGENT0; in highp vec3 in_NORMAL0; in highp vec4 in_TEXCOORD0; out highp vec4 vs_TEXCOORD0; out highp vec4 vs_TEXCOORD1; out highp vec4 vs_TEXCOORD2; out highp vec4 vs_TEXCOORD3; out mediump vec3 vs_TEXCOORD4; highp vec4 vs_TEXCOORD6; highp vec4 vs_TEXCOORD7; vec4 u_xlat0; mediump vec4 u_xlat16_0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; mediump float u_xlat16_4; mediump vec3 u_xlat16_5; 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_xlat1 = u_xlat0 + hlslcc_mtx4x4unity_ObjectToWorld[3]; u_xlat0.xyz = hlslcc_mtx4x4unity_ObjectToWorld[3].xyz * in_POSITION0.www + u_xlat0.xyz; u_xlat2 = u_xlat1.yyyy * hlslcc_mtx4x4unity_MatrixVP[1]; u_xlat2 = hlslcc_mtx4x4unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat2; u_xlat2 = hlslcc_mtx4x4unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat2; gl_Position = hlslcc_mtx4x4unity_MatrixVP[3] * u_xlat1.wwww + u_xlat2; vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw; vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw; vs_TEXCOORD1.w = u_xlat0.x; u_xlat1.xyz = in_TANGENT0.yyy * hlslcc_mtx4x4unity_ObjectToWorld[1].yzx; u_xlat1.xyz = hlslcc_mtx4x4unity_ObjectToWorld[0].yzx * in_TANGENT0.xxx + u_xlat1.xyz; u_xlat1.xyz = hlslcc_mtx4x4unity_ObjectToWorld[2].yzx * in_TANGENT0.zzz + u_xlat1.xyz; u_xlat0.x = dot(u_xlat1.xyz, u_xlat1.xyz); u_xlat0.x = inversesqrt(u_xlat0.x); u_xlat1.xyz = u_xlat0.xxx * u_xlat1.xyz; vs_TEXCOORD1.x = u_xlat1.z; u_xlat2.x = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[0].xyz); u_xlat2.y = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[1].xyz); u_xlat2.z = dot(in_NORMAL0.xyz, hlslcc_mtx4x4unity_WorldToObject[2].xyz); u_xlat0.x = dot(u_xlat2.xyz, u_xlat2.xyz); u_xlat0.x = inversesqrt(u_xlat0.x); u_xlat2 = u_xlat0.xxxx * u_xlat2.xyzz; u_xlat3.xyz = u_xlat1.xyz * u_xlat2.wxy; u_xlat3.xyz = u_xlat2.ywx * u_xlat1.yzx + (-u_xlat3.xyz); u_xlat0.x = in_TANGENT0.w * unity_WorldTransformParams.w; u_xlat3.xyz = u_xlat0.xxx * u_xlat3.xyz; vs_TEXCOORD1.y = u_xlat3.x; vs_TEXCOORD1.z = u_xlat2.x; vs_TEXCOORD2.x = u_xlat1.x; vs_TEXCOORD3.x = u_xlat1.y; vs_TEXCOORD2.w = u_xlat0.y; vs_TEXCOORD3.w = u_xlat0.z; vs_TEXCOORD2.y = u_xlat3.y; vs_TEXCOORD3.y = u_xlat3.z; vs_TEXCOORD2.z = u_xlat2.y; vs_TEXCOORD3.z = u_xlat2.w; u_xlat16_4 = u_xlat2.y * u_xlat2.y; u_xlat16_4 = u_xlat2.x * u_xlat2.x + (-u_xlat16_4); u_xlat16_0 = u_xlat2.ywzx * u_xlat2; u_xlat16_5.x = dot(unity_SHBr, u_xlat16_0); u_xlat16_5.y = dot(unity_SHBg, u_xlat16_0); u_xlat16_5.z = dot(unity_SHBb, u_xlat16_0); vs_TEXCOORD4.xyz = unity_SHC.xyz * vec3(u_xlat16_4) + u_xlat16_5.xyz; vs_TEXCOORD6 = vec4(0.0, 0.0, 0.0, 0.0); vs_TEXCOORD7 = vec4(0.0, 0.0, 0.0, 0.0); 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 mediump vec4 _WorldSpaceLightPos0; uniform mediump vec4 unity_SHAr; uniform mediump vec4 unity_SHAg; uniform mediump vec4 unity_SHAb; uniform vec4 hlslcc_mtx4x4unity_WorldToShadow[16]; uniform vec4 _LightShadowData; uniform vec4 unity_ShadowFadeCenterAndType; uniform vec4 hlslcc_mtx4x4unity_MatrixV[4]; uniform mediump vec4 _LightColor0; uniform mediump vec4 _Color; UNITY_LOCATION(0) uniform mediump sampler2D _MainTex; UNITY_LOCATION(1) uniform mediump sampler2D _BumpMap; UNITY_LOCATION(2) uniform highp sampler2D _ShadowMapTexture; UNITY_LOCATION(3) uniform highp sampler2DShadow hlslcc_zcmp_ShadowMapTexture; in highp vec4 vs_TEXCOORD0; in highp vec4 vs_TEXCOORD1; in highp vec4 vs_TEXCOORD2; in highp vec4 vs_TEXCOORD3; in mediump vec3 vs_TEXCOORD4; layout(location = 0) out mediump vec4 SV_Target0; vec3 u_xlat0; mediump vec3 u_xlat16_0; vec4 u_xlat1; mediump vec3 u_xlat16_1; vec3 u_xlat2; mediump vec3 u_xlat16_3; mediump vec3 u_xlat16_4; mediump vec3 u_xlat16_5; vec3 u_xlat6; float u_xlat12; float u_xlat18; mediump float u_xlat16_21; void main() { u_xlat0.x = hlslcc_mtx4x4unity_MatrixV[0].z; u_xlat0.y = hlslcc_mtx4x4unity_MatrixV[1].z; u_xlat0.z = hlslcc_mtx4x4unity_MatrixV[2].z; u_xlat1.x = vs_TEXCOORD1.w; u_xlat1.y = vs_TEXCOORD2.w; u_xlat1.z = vs_TEXCOORD3.w; u_xlat2.xyz = (-u_xlat1.xyz) + _WorldSpaceCameraPos.xyz; u_xlat1.xyz = u_xlat1.xyz + (-unity_ShadowFadeCenterAndType.xyz); u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz); u_xlat18 = sqrt(u_xlat18); u_xlat0.x = dot(u_xlat2.xyz, u_xlat0.xyz); u_xlat6.x = (-u_xlat0.x) + u_xlat18; u_xlat0.x = unity_ShadowFadeCenterAndType.w * u_xlat6.x + u_xlat0.x; u_xlat0.x = u_xlat0.x * _LightShadowData.z + _LightShadowData.w; u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0); u_xlat6.xyz = vs_TEXCOORD2.www * hlslcc_mtx4x4unity_WorldToShadow[1].xyz; u_xlat6.xyz = hlslcc_mtx4x4unity_WorldToShadow[0].xyz * vs_TEXCOORD1.www + u_xlat6.xyz; u_xlat6.xyz = hlslcc_mtx4x4unity_WorldToShadow[2].xyz * vs_TEXCOORD3.www + u_xlat6.xyz; u_xlat6.xyz = u_xlat6.xyz + hlslcc_mtx4x4unity_WorldToShadow[3].xyz; vec3 txVec0 = vec3(u_xlat6.xy,u_xlat6.z); u_xlat6.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0); u_xlat12 = (-_LightShadowData.x) + 1.0; u_xlat6.x = u_xlat6.x * u_xlat12 + _LightShadowData.x; u_xlat16_3.x = (-u_xlat6.x) + 1.0; u_xlat16_3.x = u_xlat0.x * u_xlat16_3.x + u_xlat6.x; u_xlat16_3.xyz = u_xlat16_3.xxx * _LightColor0.xyz; u_xlat16_0.xyz = texture(_MainTex, vs_TEXCOORD0.xy).xyz; u_xlat0.xyz = u_xlat16_0.xyz * _Color.xyz; u_xlat16_3.xyz = u_xlat16_3.xyz * u_xlat0.xyz; u_xlat16_1.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz; u_xlat16_4.xyz = u_xlat16_1.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0); u_xlat16_5.x = dot(vs_TEXCOORD1.xyz, u_xlat16_4.xyz); u_xlat16_5.y = dot(vs_TEXCOORD2.xyz, u_xlat16_4.xyz); u_xlat16_5.z = dot(vs_TEXCOORD3.xyz, u_xlat16_4.xyz); u_xlat18 = dot(u_xlat16_5.xyz, u_xlat16_5.xyz); u_xlat18 = inversesqrt(u_xlat18); u_xlat1.xyz = vec3(u_xlat18) * u_xlat16_5.xyz; u_xlat16_21 = dot(u_xlat1.xyz, _WorldSpaceLightPos0.xyz); u_xlat16_21 = max(u_xlat16_21, 0.0); 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_4.xyz = u_xlat16_4.xyz + vs_TEXCOORD4.xyz; u_xlat16_4.xyz = max(u_xlat16_4.xyz, vec3(0.0, 0.0, 0.0)); u_xlat16_4.xyz = u_xlat0.xyz * u_xlat16_4.xyz; SV_Target0.xyz = u_xlat16_3.xyz * vec3(u_xlat16_21) + u_xlat16_4.xyz; SV_Target0.w = 1.0; return; } #endif $GlobalsÐ_WorldSpaceCameraPos_WorldSpaceLightPos0 unity_SHAr unity_SHAg0 unity_SHAb@unity_WorldTransformParamsÀ _MainTex_ST _BumpMap_ST _LightShadowDataPunity_ShadowFadeCenterAndType` _LightColor0°_ColorÀunity_WorldToShadowPunity_WorldToObject€unity_MatrixVPÐ unity_MatrixVp_MainTex_BumpMap_ShadowMapTexture$Globals