Fix crash when no scissor regions are bound at D3D12 draw

This commit is contained in:
baldurk
2020-09-24 22:29:12 +01:00
parent 2d7a717e2d
commit 8b2a521a91
+11 -4
View File
@@ -975,10 +975,17 @@ ResourceId D3D12Replay::RenderOverlay(ResourceId texid, FloatVector clearCol, De
list->DrawInstanced(3, 1, 0, 0);
viewport.TopLeftX = (float)rs.scissors[0].left;
viewport.TopLeftY = (float)rs.scissors[0].top;
viewport.Width = (float)(rs.scissors[0].right - rs.scissors[0].left);
viewport.Height = (float)(rs.scissors[0].bottom - rs.scissors[0].top);
if(rs.scissors.empty())
{
viewport = {};
}
else
{
viewport.TopLeftX = (float)rs.scissors[0].left;
viewport.TopLeftY = (float)rs.scissors[0].top;
viewport.Width = (float)(rs.scissors[0].right - rs.scissors[0].left);
viewport.Height = (float)(rs.scissors[0].bottom - rs.scissors[0].top);
}
list->RSSetViewports(1, &viewport);
// black/white checkered border