diff options
author | bunnei <bunneidev@gmail.com> | 2020-02-17 21:35:14 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2020-02-26 03:23:00 +0100 |
commit | 2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1 (patch) | |
tree | 2ee5617fc3e3bdc47028d9d65097ceb070031727 /src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h | |
parent | renderer_opengl: Add texture mailbox support for presenter thread. (diff) | |
download | yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar.gz yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar.bz2 yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar.lz yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar.xz yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.tar.zst yuzu-2e16c237845bf1b5ff89b7b7a3f8bc1a84729eb1.zip |
Diffstat (limited to '')
-rw-r--r-- | src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h index c753085a8..b80669ff0 100644 --- a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h +++ b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h @@ -10,17 +10,12 @@ class EmuWindow_SDL2_GL final : public EmuWindow_SDL2 { public: - explicit EmuWindow_SDL2_GL(bool fullscreen); + explicit EmuWindow_SDL2_GL(Core::System& system, bool fullscreen); ~EmuWindow_SDL2_GL(); - /// Swap buffers to display the next frame - void SwapBuffers() override; - - /// Makes the graphics context current for the caller thread void MakeCurrent() override; - - /// Releases the GL context from the caller thread void DoneCurrent() override; + void Present() override; /// Ignored in OpenGL void RetrieveVulkanHandlers(void* get_instance_proc_addr, void* instance, @@ -29,10 +24,17 @@ public: std::unique_ptr<Core::Frontend::GraphicsContext> CreateSharedContext() const override; private: + /// Fake hidden window for the core context + SDL_Window* dummy_window{}; + /// Whether the GPU and driver supports the OpenGL extension required bool SupportsRequiredGLExtensions(); using SDL_GLContext = void*; + /// The OpenGL context associated with the window - SDL_GLContext gl_context; + SDL_GLContext window_context; + + /// The OpenGL context associated with the core + std::unique_ptr<Core::Frontend::GraphicsContext> core_context; }; |