Graphics/Graphics: Enable depth-clamp on shadow pass if supported
This commit is contained in:
parent
35414ec5d8
commit
d6a99da2ea
|
|
@ -243,6 +243,8 @@ namespace Nz
|
||||||
std::size_t distanceShadowPassIndex = m_materialPassRegistry.GetPassIndex("DistanceShadowPass");
|
std::size_t distanceShadowPassIndex = m_materialPassRegistry.GetPassIndex("DistanceShadowPass");
|
||||||
std::size_t forwardPassIndex = m_materialPassRegistry.GetPassIndex("ForwardPass");
|
std::size_t forwardPassIndex = m_materialPassRegistry.GetPassIndex("ForwardPass");
|
||||||
|
|
||||||
|
const auto& enabledFeatures = m_renderDevice->GetEnabledFeatures();
|
||||||
|
|
||||||
// BasicMaterial
|
// BasicMaterial
|
||||||
{
|
{
|
||||||
MaterialSettings settings;
|
MaterialSettings settings;
|
||||||
|
|
@ -258,6 +260,7 @@ namespace Nz
|
||||||
settings.AddPass(depthPassIndex, depthPass);
|
settings.AddPass(depthPassIndex, depthPass);
|
||||||
|
|
||||||
MaterialPass shadowPass = depthPass;
|
MaterialPass shadowPass = depthPass;
|
||||||
|
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
|
||||||
settings.AddPass(shadowPassIndex, shadowPass);
|
settings.AddPass(shadowPassIndex, shadowPass);
|
||||||
|
|
||||||
MaterialPass distanceShadowPass = shadowPass;
|
MaterialPass distanceShadowPass = shadowPass;
|
||||||
|
|
@ -283,6 +286,7 @@ namespace Nz
|
||||||
settings.AddPass(depthPassIndex, depthPass);
|
settings.AddPass(depthPassIndex, depthPass);
|
||||||
|
|
||||||
MaterialPass shadowPass = depthPass;
|
MaterialPass shadowPass = depthPass;
|
||||||
|
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
|
||||||
settings.AddPass(shadowPassIndex, shadowPass);
|
settings.AddPass(shadowPassIndex, shadowPass);
|
||||||
|
|
||||||
MaterialPass distanceShadowPass = shadowPass;
|
MaterialPass distanceShadowPass = shadowPass;
|
||||||
|
|
@ -308,6 +312,7 @@ namespace Nz
|
||||||
settings.AddPass(depthPassIndex, depthPass);
|
settings.AddPass(depthPassIndex, depthPass);
|
||||||
|
|
||||||
MaterialPass shadowPass = depthPass;
|
MaterialPass shadowPass = depthPass;
|
||||||
|
shadowPass.states.depthClamp = enabledFeatures.depthClamping;
|
||||||
settings.AddPass(shadowPassIndex, shadowPass);
|
settings.AddPass(shadowPassIndex, shadowPass);
|
||||||
|
|
||||||
MaterialPass distanceShadowPass = shadowPass;
|
MaterialPass distanceShadowPass = shadowPass;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue