Revert "[ VK/DX12] Bring setScissor on par with the other renderers (#2239)"
This reverts commit fbd7e9efd6
.
This commit is contained in:
parent
fbd7e9efd6
commit
f20fd61e4f
@ -5893,7 +5893,7 @@ namespace bgfx { namespace d3d12
|
||||
|
||||
bool wasCompute = false;
|
||||
bool viewHasScissor = false;
|
||||
bool scissorEnabled = false;
|
||||
bool restoreScissor = false;
|
||||
Rect viewScissorRect;
|
||||
viewScissorRect.clear();
|
||||
|
||||
@ -6033,6 +6033,7 @@ namespace bgfx { namespace d3d12
|
||||
rc.right = viewScissorRect.m_x + viewScissorRect.m_width;
|
||||
rc.bottom = viewScissorRect.m_y + viewScissorRect.m_height;
|
||||
m_commandList->RSSetScissorRects(1, &rc);
|
||||
restoreScissor = false;
|
||||
|
||||
Clear& clr = _render->m_view[view].m_clear;
|
||||
if (BGFX_CLEAR_NONE != clr.m_flags)
|
||||
@ -6529,9 +6530,10 @@ namespace bgfx { namespace d3d12
|
||||
|
||||
if (UINT16_MAX == scissor)
|
||||
{
|
||||
scissorEnabled = viewHasScissor;
|
||||
if (viewHasScissor)
|
||||
if (restoreScissor
|
||||
|| viewHasScissor)
|
||||
{
|
||||
restoreScissor = false;
|
||||
D3D12_RECT rc;
|
||||
rc.left = viewScissorRect.m_x;
|
||||
rc.top = viewScissorRect.m_y;
|
||||
@ -6542,11 +6544,14 @@ namespace bgfx { namespace d3d12
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
restoreScissor = true;
|
||||
Rect scissorRect;
|
||||
scissorRect.setIntersect(viewScissorRect, _render->m_frameCache.m_rectCache.m_cache[scissor]);
|
||||
if (scissorRect.isZeroArea() )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
scissorEnabled = true;
|
||||
D3D12_RECT rc;
|
||||
rc.left = scissorRect.m_x;
|
||||
rc.top = scissorRect.m_y;
|
||||
|
@ -5944,7 +5944,7 @@ VK_DESTROY
|
||||
|
||||
bool wasCompute = false;
|
||||
bool viewHasScissor = false;
|
||||
bool scissorEnabled = false;
|
||||
bool restoreScissor = false;
|
||||
Rect viewScissorRect;
|
||||
viewScissorRect.clear();
|
||||
|
||||
@ -6097,6 +6097,8 @@ VK_DESTROY
|
||||
rc.extent.height = viewScissorRect.m_height;
|
||||
vkCmdSetScissor(m_commandBuffer, 0, 1, &rc);
|
||||
|
||||
restoreScissor = false;
|
||||
|
||||
Clear& clr = _render->m_view[view].m_clear;
|
||||
if (BGFX_CLEAR_NONE != clr.m_flags)
|
||||
{
|
||||
@ -6394,9 +6396,10 @@ VK_DESTROY
|
||||
|
||||
if (UINT16_MAX == scissor)
|
||||
{
|
||||
scissorEnabled = viewHasScissor;
|
||||
if (viewHasScissor)
|
||||
if (restoreScissor
|
||||
|| viewHasScissor)
|
||||
{
|
||||
restoreScissor = false;
|
||||
VkRect2D rc;
|
||||
rc.offset.x = viewScissorRect.m_x;
|
||||
rc.offset.y = viewScissorRect.m_y;
|
||||
@ -6407,10 +6410,10 @@ VK_DESTROY
|
||||
}
|
||||
else
|
||||
{
|
||||
restoreScissor = true;
|
||||
Rect scissorRect;
|
||||
scissorRect.setIntersect(viewScissorRect, _render->m_frameCache.m_rectCache.m_cache[scissor]);
|
||||
|
||||
scissorEnabled = true;
|
||||
VkRect2D rc;
|
||||
rc.offset.x = scissorRect.m_x;
|
||||
rc.offset.y = scissorRect.m_y;
|
||||
|
Loading…
Reference in New Issue
Block a user