mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-20 19:54:19 +01:00
[dxvk] Always initialize dynamic depth/stencil state
Spec says we must set any dynamic state before making a draw call, there doesn't seem to be an exception if we don't enable depth or stencil tests.
This commit is contained in:
parent
0b59af996a
commit
70a71237cf
@ -710,6 +710,9 @@ namespace dxvk {
|
||||
if (depthTestEnable) {
|
||||
m_vkd->vkCmdSetDepthWriteEnable(m_execBuffer, depthWriteEnable);
|
||||
m_vkd->vkCmdSetDepthCompareOp(m_execBuffer, depthCompareOp);
|
||||
} else {
|
||||
m_vkd->vkCmdSetDepthWriteEnable(m_execBuffer, VK_FALSE);
|
||||
m_vkd->vkCmdSetDepthCompareOp(m_execBuffer, VK_COMPARE_OP_ALWAYS);
|
||||
}
|
||||
}
|
||||
|
||||
@ -760,6 +763,15 @@ namespace dxvk {
|
||||
VK_STENCIL_FACE_BACK_BIT, back.compareMask);
|
||||
m_vkd->vkCmdSetStencilWriteMask(m_execBuffer,
|
||||
VK_STENCIL_FACE_BACK_BIT, back.writeMask);
|
||||
} else {
|
||||
m_vkd->vkCmdSetStencilOp(m_execBuffer,
|
||||
VK_STENCIL_FACE_FRONT_AND_BACK,
|
||||
VK_STENCIL_OP_KEEP, VK_STENCIL_OP_KEEP,
|
||||
VK_STENCIL_OP_KEEP, VK_COMPARE_OP_ALWAYS);
|
||||
m_vkd->vkCmdSetStencilCompareMask(m_execBuffer,
|
||||
VK_STENCIL_FACE_FRONT_AND_BACK, 0x0);
|
||||
m_vkd->vkCmdSetStencilWriteMask(m_execBuffer,
|
||||
VK_STENCIL_FACE_FRONT_AND_BACK, 0x0);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user