From c98a5f7dfd6d5f779c4f18735656becc4fd9f365 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Wed, 2 Oct 2019 12:19:47 +1000 Subject: Renderer: Draw ImGui interface to both eyes --- Source/Core/VideoCommon/RenderBase.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'Source/Core/VideoCommon/RenderBase.h') diff --git a/Source/Core/VideoCommon/RenderBase.h b/Source/Core/VideoCommon/RenderBase.h index 16ce52aaa4..b323946c5a 100644 --- a/Source/Core/VideoCommon/RenderBase.h +++ b/Source/Core/VideoCommon/RenderBase.h @@ -199,9 +199,6 @@ public: void SaveScreenshot(std::string filename, bool wait_for_completion); void DrawDebugText(); - // ImGui initialization depends on being able to create textures and pipelines, so do it last. - bool InitializeImGui(); - virtual void ClearScreen(const MathUtil::Rectangle& rc, bool colorEnable, bool alphaEnable, bool zEnable, u32 color, u32 z); virtual void ReinterpretPixelData(EFBReinterpretType convtype); @@ -243,6 +240,10 @@ public: virtual std::unique_ptr CreateAsyncShaderCompiler(); + // Returns true if a layer-expanding geometry shader should be used when rendering the user + // interface and final XFB. + bool UseGeometryShaderForUI() const; + // Returns a lock for the ImGui mutex, enabling data structures to be modified from outside. // Use with care, only non-drawing functions should be called from outside the video thread, // as the drawing is tied to a "frame". @@ -275,6 +276,12 @@ protected: void CheckFifoRecording(); void RecordVideoMemory(); + // ImGui initialization depends on being able to create textures and pipelines, so do it last. + bool InitializeImGui(); + + // Recompiles ImGui pipeline - call when stereo mode changes. + bool RecompileImGuiPipeline(); + // Sets up ImGui state for the next frame. // This function itself acquires the ImGui lock, so it should not be held. void BeginImGuiFrame(); -- cgit v1.2.3