maxwell3d: Move FinishedPrimitiveBatch event after AcceleratedDrawBatch()
The start and finish events should likely not be right after one another like this, otherwise the batch will appear to complete immediately
This commit is contained in:
parent
165c23c848
commit
20800f2df7
|
@ -218,10 +218,6 @@ void Maxwell3D::DrawArrays() {
|
||||||
debug_context->OnEvent(Tegra::DebugContext::Event::IncomingPrimitiveBatch, nullptr);
|
debug_context->OnEvent(Tegra::DebugContext::Event::IncomingPrimitiveBatch, nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (debug_context) {
|
|
||||||
debug_context->OnEvent(Tegra::DebugContext::Event::FinishedPrimitiveBatch, nullptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Both instance configuration registers can not be set at the same time.
|
// Both instance configuration registers can not be set at the same time.
|
||||||
ASSERT_MSG(!regs.draw.instance_next || !regs.draw.instance_cont,
|
ASSERT_MSG(!regs.draw.instance_next || !regs.draw.instance_cont,
|
||||||
"Illegal combination of instancing parameters");
|
"Illegal combination of instancing parameters");
|
||||||
|
@ -237,6 +233,10 @@ void Maxwell3D::DrawArrays() {
|
||||||
const bool is_indexed{regs.index_array.count && !regs.vertex_buffer.count};
|
const bool is_indexed{regs.index_array.count && !regs.vertex_buffer.count};
|
||||||
rasterizer.AccelerateDrawBatch(is_indexed);
|
rasterizer.AccelerateDrawBatch(is_indexed);
|
||||||
|
|
||||||
|
if (debug_context) {
|
||||||
|
debug_context->OnEvent(Tegra::DebugContext::Event::FinishedPrimitiveBatch, nullptr);
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(bunnei): Below, we reset vertex count so that we can use these registers to determine if
|
// TODO(bunnei): Below, we reset vertex count so that we can use these registers to determine if
|
||||||
// the game is trying to draw indexed or direct mode. This needs to be verified on HW still -
|
// the game is trying to draw indexed or direct mode. This needs to be verified on HW still -
|
||||||
// it's possible that it is incorrect and that there is some other register used to specify the
|
// it's possible that it is incorrect and that there is some other register used to specify the
|
||||||
|
|
Loading…
Reference in a new issue