diff options
| author | Narr the Reg <juangerman-13@hotmail.com> | 2024-02-11 20:58:28 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-11 20:58:28 -0600 |
| commit | 2ff45cd0da941dce2564f5c18c580d0283da27bf (patch) | |
| tree | 81fea8c23f9afa39c167288e03ff57eb25413ee4 /src/video_core/renderer_opengl/renderer_opengl.h | |
| parent | b6b56f48b7eedd44cdbb03b3a3ef82b7bedc7081 (diff) | |
| parent | 4677fd3f64dd51c7419e0268df9fe10f8f6ce0fd (diff) | |
Merge pull request #12756 from liamwhite/applet-multiprocess-hwc
general: applet multiprocess
Diffstat (limited to 'src/video_core/renderer_opengl/renderer_opengl.h')
| -rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/renderer_opengl.h b/src/video_core/renderer_opengl/renderer_opengl.h index c4625c96e..60d6a1477 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.h +++ b/src/video_core/renderer_opengl/renderer_opengl.h @@ -42,6 +42,8 @@ public: void Composite(std::span<const Tegra::FramebufferConfig> framebuffers) override; + std::vector<u8> GetAppletCaptureBuffer() override; + VideoCore::RasterizerInterface* ReadRasterizer() override { return &rasterizer; } @@ -52,7 +54,11 @@ public: private: void AddTelemetryFields(); + + void RenderToBuffer(std::span<const Tegra::FramebufferConfig> framebuffers, + const Layout::FramebufferLayout& layout, void* dst); void RenderScreenshot(std::span<const Tegra::FramebufferConfig> framebuffers); + void RenderAppletCaptureLayer(std::span<const Tegra::FramebufferConfig> framebuffers); Core::TelemetrySession& telemetry_session; Core::Frontend::EmuWindow& emu_window; @@ -64,8 +70,11 @@ private: ProgramManager program_manager; RasterizerOpenGL rasterizer; OGLFramebuffer screenshot_framebuffer; + OGLFramebuffer capture_framebuffer; + OGLRenderbuffer capture_renderbuffer; std::unique_ptr<BlitScreen> blit_screen; + std::unique_ptr<BlitScreen> blit_applet; }; } // namespace OpenGL |
