diff --git a/src/gl/scene/gl_scene.cpp b/src/gl/scene/gl_scene.cpp index fa7b9f7a7..4e1aa844b 100644 --- a/src/gl/scene/gl_scene.cpp +++ b/src/gl/scene/gl_scene.cpp @@ -493,6 +493,7 @@ sector_t * FGLRenderer::RenderViewpoint (FRenderViewpoint &mainvp, AActor * came if (mainview) { + PostProcess.Clock(); if (toscreen) di->EndDrawScene(mainvp.sector); // do not call this for camera textures. if (gl_RenderState.GetPassType() == GBUFFER_PASS) // Turn off ssao draw buffers @@ -506,6 +507,7 @@ sector_t * FGLRenderer::RenderViewpoint (FRenderViewpoint &mainvp, AActor * came FGLDebug::PopGroup(); // MainView PostProcessScene(cm, [&]() { di->DrawEndScene2D(mainvp.sector); }); + PostProcess.Unclock(); } di->EndDrawInfo(); if (vrmode->mEyeCount > 1) diff --git a/src/hwrenderer/utility/hw_clock.cpp b/src/hwrenderer/utility/hw_clock.cpp index 74aa096a4..40c61924b 100644 --- a/src/hwrenderer/utility/hw_clock.cpp +++ b/src/hwrenderer/utility/hw_clock.cpp @@ -46,7 +46,7 @@ glcycle_t RenderWall,SetupWall,ClipWall; glcycle_t RenderFlat,SetupFlat; glcycle_t RenderSprite,SetupSprite; glcycle_t All, Finish, PortalAll, Bsp; -glcycle_t ProcessAll; +glcycle_t ProcessAll, PostProcess; glcycle_t RenderAll; glcycle_t Dirty; glcycle_t drawcalls; @@ -64,6 +64,7 @@ void ResetProfilingData() PortalAll.Reset(); RenderAll.Reset(); ProcessAll.Reset(); + PostProcess.Reset(); RenderWall.Reset(); SetupWall.Reset(); ClipWall.Reset(); @@ -94,13 +95,13 @@ static void AppendRenderTimes(FString &str) "F: Render=%2.3f, Setup=%2.3f\n" "S: Render=%2.3f, Setup=%2.3f\n" "2D: %2.3f Finish3D: %2.3f\n" - "All=%2.3f, Render=%2.3f, Setup=%2.3f, Portal=%2.3f, Drawcalls=%2.3f, Finish=%2.3f\n", + "All=%2.3f, Render=%2.3f, Setup=%2.3f, Portal=%2.3f, Drawcalls=%2.3f, Postprocess=%2.3f, Finish=%2.3f\n", bsp, clipwall, RenderWall.TimeMS(), setupwall, RenderFlat.TimeMS(), SetupFlat.TimeMS(), RenderSprite.TimeMS(), SetupSprite.TimeMS(), twoD.TimeMS(), Flush3D.TimeMS() - twoD.TimeMS(), - All.TimeMS() + Finish.TimeMS(), RenderAll.TimeMS(), ProcessAll.TimeMS(), PortalAll.TimeMS(), drawcalls.TimeMS(), Finish.TimeMS()); + All.TimeMS() + Finish.TimeMS(), RenderAll.TimeMS(), ProcessAll.TimeMS(), PortalAll.TimeMS(), drawcalls.TimeMS(), PostProcess.TimeMS(), Finish.TimeMS()); } static void AppendRenderStats(FString &out) diff --git a/src/hwrenderer/utility/hw_clock.h b/src/hwrenderer/utility/hw_clock.h index 7cb82fedc..243ec4924 100644 --- a/src/hwrenderer/utility/hw_clock.h +++ b/src/hwrenderer/utility/hw_clock.h @@ -9,7 +9,7 @@ extern glcycle_t RenderWall,SetupWall,ClipWall; extern glcycle_t RenderFlat,SetupFlat; extern glcycle_t RenderSprite,SetupSprite; extern glcycle_t All, Finish, PortalAll, Bsp; -extern glcycle_t ProcessAll; +extern glcycle_t ProcessAll, PostProcess; extern glcycle_t RenderAll; extern glcycle_t Dirty; extern glcycle_t drawcalls, twoD, Flush3D;