diff --git a/Content/Shaders/Shadows.flax b/Content/Shaders/Shadows.flax index ef25d1879..ddd2cd83a 100644 --- a/Content/Shaders/Shadows.flax +++ b/Content/Shaders/Shadows.flax @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:236797180d9933b69146c2651d3778997e0da6d055ad74477b254f4cb3767783 -size 6505 +oid sha256:594bfd3a29298f746c19058b1d8d80b929e89ebe05e5fe211f8b78e4bb9d83cd +size 6571 diff --git a/Source/Shaders/Shadows.shader b/Source/Shaders/Shadows.shader index 92c2d0815..510c68c09 100644 --- a/Source/Shaders/Shadows.shader +++ b/Source/Shaders/Shadows.shader @@ -30,7 +30,7 @@ float RayCastScreenSpaceShadow(GBufferData gBufferData, GBufferSample gBuffer, f { #if SHADOWS_QUALITY == 3 const uint maxSteps = 16; -#elif SHADOWS_QUALITY == 3 +#elif SHADOWS_QUALITY == 2 const uint maxSteps = 12; #else const uint maxSteps = 8; @@ -92,7 +92,7 @@ float4 PS_PointLight(Model_VS2PS input) : SV_Target0 // Sample shadow ShadowSample shadow = SamplePointLightShadow(Light, ShadowsBuffer, ShadowMap, gBuffer); -#if CONTACT_SHADOWS +#if CONTACT_SHADOWS && SHADOWS_QUALITY > 0 // Calculate screen-space contact shadow shadow.SurfaceShadow *= RayCastScreenSpaceShadow(gBufferData, gBuffer, gBuffer.WorldPos, normalize(Light.Position - gBuffer.WorldPos), ContactShadowsLength); #endif @@ -119,7 +119,7 @@ float4 PS_DirLight(Quad_VS2PS input) : SV_Target0 // Sample shadow ShadowSample shadow = SampleDirectionalLightShadow(Light, ShadowsBuffer, ShadowMap, gBuffer, TemporalTime); -#if CONTACT_SHADOWS +#if CONTACT_SHADOWS && SHADOWS_QUALITY > 0 // Calculate screen-space contact shadow shadow.SurfaceShadow *= RayCastScreenSpaceShadow(gBufferData, gBuffer, gBuffer.WorldPos, Light.Direction, ContactShadowsLength); #endif @@ -149,7 +149,7 @@ float4 PS_SpotLight(Model_VS2PS input) : SV_Target0 // Sample shadow ShadowSample shadow = SampleSpotLightShadow(Light, ShadowsBuffer, ShadowMap, gBuffer); -#if CONTACT_SHADOWS +#if CONTACT_SHADOWS && SHADOWS_QUALITY > 0 // Calculate screen-space contact shadow shadow.SurfaceShadow *= RayCastScreenSpaceShadow(gBufferData, gBuffer, gBuffer.WorldPos, normalize(Light.Position - gBuffer.WorldPos), ContactShadowsLength); #endif