diff --git a/rpcs3/Emu/RSX/GL/GLGSRender.cpp b/rpcs3/Emu/RSX/GL/GLGSRender.cpp index bd99ce0bcc..4d660add5b 100644 --- a/rpcs3/Emu/RSX/GL/GLGSRender.cpp +++ b/rpcs3/Emu/RSX/GL/GLGSRender.cpp @@ -458,7 +458,7 @@ void GLGSRender::end() GLfloat colors[] = { 0.f, 0.f, 0.f, 0.f }; //It is impossible for the render target to be type A or B here (clear all would have been flagged) for (auto &i : buffers_to_clear) - glClearBufferfv(m_draw_fbo->id(), i, colors); + glClearBufferfv(GL_COLOR, i, colors); } if (clear_depth) diff --git a/rpcs3/Emu/RSX/GL/GLRenderTargets.h b/rpcs3/Emu/RSX/GL/GLRenderTargets.h index 6858d29f96..6f19e81f42 100644 --- a/rpcs3/Emu/RSX/GL/GLRenderTargets.h +++ b/rpcs3/Emu/RSX/GL/GLRenderTargets.h @@ -182,9 +182,9 @@ struct gl_render_target_traits result->set_native_component_layout(native_layout); result->old_contents = old_surface; - result->queue_tag(address); result->set_cleared(false); result->update_surface(); + result->queue_tag(address); return result; } @@ -210,9 +210,9 @@ struct gl_render_target_traits result->set_native_component_layout(native_layout); result->old_contents = old_surface; - result->queue_tag(address); result->set_cleared(false); result->update_surface(); + result->queue_tag(address); return result; }