From be51120d237cb551fae90fbfaebda41669c40403 Mon Sep 17 00:00:00 2001 From: Subv Date: Wed, 6 Jun 2018 23:54:25 -0500 Subject: GPU: Bind and clear the render target when the CLEAR_BUFFERS register is written to. --- src/video_core/renderer_opengl/gl_rasterizer.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/video_core/renderer_opengl/gl_rasterizer.h') diff --git a/src/video_core/renderer_opengl/gl_rasterizer.h b/src/video_core/renderer_opengl/gl_rasterizer.h index 493aa39e5..0b1e139b0 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.h +++ b/src/video_core/renderer_opengl/gl_rasterizer.h @@ -28,6 +28,7 @@ public: ~RasterizerOpenGL() override; void DrawArrays() override; + void Clear() override; void NotifyMaxwellRegisterChanged(u32 method) override; void FlushAll() override; void FlushRegion(Tegra::GPUVAddr addr, u64 size) override; -- cgit v1.2.3 From 78443a7f2929dece8d2509d50642df9478aeb166 Mon Sep 17 00:00:00 2001 From: Subv Date: Tue, 3 Jul 2018 16:55:44 -0500 Subject: GPU: Factor out the framebuffer configuration code for both Clear and Draw commands. --- src/video_core/renderer_opengl/gl_rasterizer.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/video_core/renderer_opengl/gl_rasterizer.h') diff --git a/src/video_core/renderer_opengl/gl_rasterizer.h b/src/video_core/renderer_opengl/gl_rasterizer.h index 0b1e139b0..7738f40b1 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.h +++ b/src/video_core/renderer_opengl/gl_rasterizer.h @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include "common/common_types.h" @@ -82,6 +83,10 @@ private: u32 border_color_a; }; + /// Configures the color and depth framebuffer states and returns the dirty + /// surfaces if writing was enabled. + std::pair ConfigureFramebuffers(); + /// Binds the framebuffer color and depth surface void BindFramebufferSurfaces(const Surface& color_surface, const Surface& depth_surface, bool has_stencil); -- cgit v1.2.3