mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-07-08 08:40:55 +00:00
Be careful not to overlap multidraws in GL when replaying event-to-event
This commit is contained in:
@@ -767,7 +767,7 @@ ResourceId GLReplay::RenderOverlay(ResourceId texid, CompType typeHint, DebugOve
|
||||
m_pDriver->ReplayLog(events[i], events[i], eReplay_OnlyDraw);
|
||||
|
||||
if(overlay == DebugOverlay::ClearBeforePass && i + 1 < events.size())
|
||||
m_pDriver->ReplayLog(events[i], events[i + 1], eReplay_WithoutDraw);
|
||||
m_pDriver->ReplayLog(events[i] + 1, events[i + 1], eReplay_WithoutDraw);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1139,7 +1139,7 @@ ResourceId GLReplay::RenderOverlay(ResourceId texid, CompType typeHint, DebugOve
|
||||
m_pDriver->ReplayLog(0, events[i], eReplay_OnlyDraw);
|
||||
|
||||
if(i + 1 < events.size())
|
||||
m_pDriver->ReplayLog(events[i], events[i + 1], eReplay_WithoutDraw);
|
||||
m_pDriver->ReplayLog(events[i] + 1, events[i + 1], eReplay_WithoutDraw);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1336,7 +1336,7 @@ ResourceId GLReplay::RenderOverlay(ResourceId texid, CompType typeHint, DebugOve
|
||||
m_pDriver->ReplayLog(0, events[i], eReplay_OnlyDraw);
|
||||
|
||||
if(i + 1 < events.size())
|
||||
m_pDriver->ReplayLog(events[i], events[i + 1], eReplay_WithoutDraw);
|
||||
m_pDriver->ReplayLog(events[i] + 1, events[i + 1], eReplay_WithoutDraw);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1386,7 +1386,8 @@ void GLReplay::InitPostVSBuffers(const vector<uint32_t> &passEvents)
|
||||
{
|
||||
if(prev != passEvents[i])
|
||||
{
|
||||
m_pDriver->ReplayLog(prev, passEvents[i], eReplay_WithoutDraw);
|
||||
m_pDriver->ReplayLog(prev, prev, eReplay_OnlyDraw);
|
||||
m_pDriver->ReplayLog(prev + 1, passEvents[i], eReplay_WithoutDraw);
|
||||
|
||||
prev = passEvents[i];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user