From 85d206c0c8a86c7bae4df1f818fc3e71aee26ed2 Mon Sep 17 00:00:00 2001 From: Santi Paprika Date: Tue, 30 Nov 2021 18:19:39 +0100 Subject: [PATCH] Support directional lights with disabled shadows Signed-off-by: Santi Paprika --- .../Atom/Features/PBR/Lights/DirectionalLight.azsli | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gems/Atom/Feature/Common/Assets/ShaderLib/Atom/Features/PBR/Lights/DirectionalLight.azsli b/Gems/Atom/Feature/Common/Assets/ShaderLib/Atom/Features/PBR/Lights/DirectionalLight.azsli index 32654e0427..ccaedcd34a 100644 --- a/Gems/Atom/Feature/Common/Assets/ShaderLib/Atom/Features/PBR/Lights/DirectionalLight.azsli +++ b/Gems/Atom/Feature/Common/Assets/ShaderLib/Atom/Features/PBR/Lights/DirectionalLight.azsli @@ -58,7 +58,7 @@ void ApplyDirectionalLights(Surface surface, inout LightingData lightingData) // [GFX TODO][ATOM-2012] care of multiple directional light // Currently shadow check is done only for index == shadowIndex. float currentLitRatio = 1.0f; - float currentTransmissionParameter = 1.0f; + float currentTransmissionParameter = (o_transmission_mode == TransmissionMode::ThickObject) ? 0.0f : 9999.0f; if (o_enableShadows) { bool activeLight = index == shadowIndex; @@ -66,12 +66,12 @@ void ApplyDirectionalLights(Surface surface, inout LightingData lightingData) if (o_transmission_mode == TransmissionMode::ThickObject) { // Back shadow ratio (add contribution only if current directional light is the active one for shadows) - currentTransmissionParameter = activeLight ? backShadowRatio : 0.; + currentTransmissionParameter = activeLight ? backShadowRatio : 0.0f; } else if (o_transmission_mode == TransmissionMode::ThinObject) { // Transmission distance (add contribution only if current directional light is the active one for shadows) - currentTransmissionParameter = activeLight ? transmissionDistance : 9999.f; + currentTransmissionParameter = activeLight ? transmissionDistance : 9999.0f; } }