Graphics/Graphics: Enable depth-clamp on shadow pass if supported

This commit is contained in:
SirLynix 2023-09-09 20:56:12 +02:00 committed by Jérôme Leclercq
parent 35414ec5d8
commit d6a99da2ea
1 changed files with 5 additions and 0 deletions

View File

@ -243,6 +243,8 @@ namespace Nz
std::size_t distanceShadowPassIndex = m_materialPassRegistry.GetPassIndex("DistanceShadowPass");
std::size_t forwardPassIndex = m_materialPassRegistry.GetPassIndex("ForwardPass");
const auto& enabledFeatures = m_renderDevice->GetEnabledFeatures();
// BasicMaterial
{
MaterialSettings settings;
@ -258,6 +260,7 @@ namespace Nz
settings.AddPass(depthPassIndex, depthPass);
MaterialPass shadowPass = depthPass;
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
settings.AddPass(shadowPassIndex, shadowPass);
MaterialPass distanceShadowPass = shadowPass;
@ -283,6 +286,7 @@ namespace Nz
settings.AddPass(depthPassIndex, depthPass);
MaterialPass shadowPass = depthPass;
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
settings.AddPass(shadowPassIndex, shadowPass);
MaterialPass distanceShadowPass = shadowPass;
@ -308,6 +312,7 @@ namespace Nz
settings.AddPass(depthPassIndex, depthPass);
MaterialPass shadowPass = depthPass;
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
settings.AddPass(shadowPassIndex, shadowPass);
MaterialPass distanceShadowPass = shadowPass;