From 1792f9c9ab97c5efcbb41c83aa9e1b95ebebf49c Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 17 Apr 2023 13:37:00 +0100 Subject: [PATCH] Ensure GL pixel history always replays all events even when skipping --- renderdoc/driver/gl/gl_pixelhistory.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/renderdoc/driver/gl/gl_pixelhistory.cpp b/renderdoc/driver/gl/gl_pixelhistory.cpp index 9906c5494..fb5b80977 100644 --- a/renderdoc/driver/gl/gl_pixelhistory.cpp +++ b/renderdoc/driver/gl/gl_pixelhistory.cpp @@ -824,6 +824,10 @@ rdcarray QueryModifyingEvents(WrappedOpenGL *driver, GLPixelHistoryR state.ApplyState(driver); } + else + { + driver->ReplayLog(events[i].eventId, events[i].eventId, eReplay_OnlyDraw); + } if(i < events.size() - 1) { @@ -2015,6 +2019,12 @@ void CalculateFragmentDepthTests(WrappedOpenGL *driver, GLPixelHistoryResources { ++historyIndex; } + + if(i < modEvents.size() - 1) + { + driver->ReplayLog(modEvents[i].eventId, modEvents[i + 1].eventId, eReplay_WithoutDraw); + } + continue; }