diff --git a/pcsx2/GS/Renderers/Common/GSDevice.cpp b/pcsx2/GS/Renderers/Common/GSDevice.cpp index ea800e89ff..1a58f243e7 100644 --- a/pcsx2/GS/Renderers/Common/GSDevice.cpp +++ b/pcsx2/GS/Renderers/Common/GSDevice.cpp @@ -228,6 +228,21 @@ bool GSDevice::GetHostRefreshRate(float* refresh_rate) return WindowInfo::QueryRefreshRateForWindow(m_window_info, refresh_rate); } +void GSDevice::ClearRenderTarget(GSTexture* t, u32 c) +{ + t->SetClearColor(c); +} + +void GSDevice::ClearDepth(GSTexture* t, float d) +{ + t->SetClearDepth(d); +} + +void GSDevice::InvalidateRenderTarget(GSTexture* t) +{ + t->SetState(GSTexture::State::Invalidated); +} + bool GSDevice::UpdateImGuiFontTexture() { ImGuiIO& io = ImGui::GetIO(); diff --git a/pcsx2/GS/Renderers/Common/GSDevice.h b/pcsx2/GS/Renderers/Common/GSDevice.h index 78eb68a22b..9427528327 100644 --- a/pcsx2/GS/Renderers/Common/GSDevice.h +++ b/pcsx2/GS/Renderers/Common/GSDevice.h @@ -877,9 +877,9 @@ public: /// Returns the amount of GPU time utilized since the last time this method was called. virtual float GetAndResetAccumulatedGPUTime() = 0; - virtual void ClearRenderTarget(GSTexture* t, u32 c) = 0; - virtual void InvalidateRenderTarget(GSTexture* t) = 0; - virtual void ClearDepth(GSTexture* t, float d) = 0; + void ClearRenderTarget(GSTexture* t, u32 c); + void ClearDepth(GSTexture* t, float d); + void InvalidateRenderTarget(GSTexture* t); virtual void PushDebugGroup(const char* fmt, ...) = 0; virtual void PopDebugGroup() = 0; diff --git a/pcsx2/GS/Renderers/DX11/GSDevice11.cpp b/pcsx2/GS/Renderers/DX11/GSDevice11.cpp index 042ae03371..253b68a8b6 100644 --- a/pcsx2/GS/Renderers/DX11/GSDevice11.cpp +++ b/pcsx2/GS/Renderers/DX11/GSDevice11.cpp @@ -1057,21 +1057,6 @@ void GSDevice11::DrawIndexedPrimitive(int offset, int count) m_ctx->DrawIndexed(count, m_index.start + offset, m_vertex.start); } -void GSDevice11::ClearRenderTarget(GSTexture* t, u32 c) -{ - t->SetClearColor(c); -} - -void GSDevice11::InvalidateRenderTarget(GSTexture* t) -{ - t->SetState(GSTexture::State::Invalidated); -} - -void GSDevice11::ClearDepth(GSTexture* t, float d) -{ - t->SetClearDepth(d); -} - void GSDevice11::CommitClear(GSTexture* t) { GSTexture11* T = static_cast(t); diff --git a/pcsx2/GS/Renderers/DX11/GSDevice11.h b/pcsx2/GS/Renderers/DX11/GSDevice11.h index 219ee94c9e..fabc4ed28f 100644 --- a/pcsx2/GS/Renderers/DX11/GSDevice11.h +++ b/pcsx2/GS/Renderers/DX11/GSDevice11.h @@ -309,10 +309,6 @@ public: void DrawIndexedPrimitive(); void DrawIndexedPrimitive(int offset, int count); - void ClearRenderTarget(GSTexture* t, u32 c) override; - void InvalidateRenderTarget(GSTexture* t) override; - void ClearDepth(GSTexture* t, float v) override; - void PushDebugGroup(const char* fmt, ...) override; void PopDebugGroup() override; void InsertDebugMessage(DebugMessageCategory category, const char* fmt, ...) override; diff --git a/pcsx2/GS/Renderers/DX12/GSDevice12.cpp b/pcsx2/GS/Renderers/DX12/GSDevice12.cpp index e9114ea01f..7c6197d034 100644 --- a/pcsx2/GS/Renderers/DX12/GSDevice12.cpp +++ b/pcsx2/GS/Renderers/DX12/GSDevice12.cpp @@ -639,30 +639,6 @@ void GSDevice12::DrawIndexedPrimitive(int offset, int count) g_d3d12_context->GetCommandList()->DrawIndexedInstanced(count, 1, m_index.start + offset, m_vertex.start, 0); } -void GSDevice12::ClearRenderTarget(GSTexture* t, u32 c) -{ - if (m_current_render_target == t) - EndRenderPass(); - - t->SetClearColor(c); -} - -void GSDevice12::InvalidateRenderTarget(GSTexture* t) -{ - if (m_current_render_target == t || m_current_depth_target == t) - EndRenderPass(); - - t->SetState(GSTexture::State::Invalidated); -} - -void GSDevice12::ClearDepth(GSTexture* t, float d) -{ - if (m_current_depth_target == t) - EndRenderPass(); - - t->SetClearDepth(d); -} - void GSDevice12::LookupNativeFormat(GSTexture::Format format, DXGI_FORMAT* d3d_format, DXGI_FORMAT* srv_format, DXGI_FORMAT* rtv_format, DXGI_FORMAT* dsv_format) const { diff --git a/pcsx2/GS/Renderers/DX12/GSDevice12.h b/pcsx2/GS/Renderers/DX12/GSDevice12.h index 696cef2600..18d84814d7 100644 --- a/pcsx2/GS/Renderers/DX12/GSDevice12.h +++ b/pcsx2/GS/Renderers/DX12/GSDevice12.h @@ -279,10 +279,6 @@ public: void DrawIndexedPrimitive(); void DrawIndexedPrimitive(int offset, int count); - void ClearRenderTarget(GSTexture* t, u32 c) override; - void InvalidateRenderTarget(GSTexture* t) override; - void ClearDepth(GSTexture* t, float d) override; - std::unique_ptr CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) override; void CopyRect(GSTexture* sTex, GSTexture* dTex, const GSVector4i& r, u32 destX, u32 destY) override; diff --git a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.h b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.h index c387bc7a9b..f4e3859301 100644 --- a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.h +++ b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.h @@ -404,10 +404,6 @@ public: float GetAndResetAccumulatedGPUTime() override; void AccumulateCommandBufferTime(id buffer); - void ClearRenderTarget(GSTexture* t, u32 c) override; - void ClearDepth(GSTexture* t, float d) override; - void InvalidateRenderTarget(GSTexture* t) override; - std::unique_ptr CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) override; void ClearSamplerCache() override; diff --git a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm index 37b75b4736..006890152f 100644 --- a/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm +++ b/pcsx2/GS/Renderers/Metal/GSDeviceMTL.mm @@ -1424,21 +1424,6 @@ void GSDeviceMTL::AccumulateCommandBufferTime(id buffer) #pragma clang diagnostic pop } -void GSDeviceMTL::ClearRenderTarget(GSTexture* t, uint32 c) -{ - t->SetClearColor(c); -} - -void GSDeviceMTL::ClearDepth(GSTexture* t, float d) -{ - t->SetClearDepth(d); -} - -void GSDeviceMTL::InvalidateRenderTarget(GSTexture* t) -{ - t->SetState(GSTexture::State::Invalidated); -} - std::unique_ptr GSDeviceMTL::CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) { return GSDownloadTextureMTL::Create(this, width, height, format); diff --git a/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.cpp b/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.cpp index 3225393189..c135feba88 100644 --- a/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.cpp +++ b/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.cpp @@ -961,21 +961,6 @@ void GSDeviceOGL::CommitClear(GSTexture* t, bool use_write_fbo) } } -void GSDeviceOGL::ClearRenderTarget(GSTexture* t, u32 c) -{ - t->SetClearColor(c); -} - -void GSDeviceOGL::InvalidateRenderTarget(GSTexture* t) -{ - t->SetState(GSTexture::State::Invalidated); -} - -void GSDeviceOGL::ClearDepth(GSTexture* t, float d) -{ - t->SetClearDepth(d); -} - std::unique_ptr GSDeviceOGL::CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) { return GSDownloadTextureOGL::Create(width, height, format); diff --git a/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.h b/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.h index 5bfa4d5a71..f2b44d4499 100644 --- a/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.h +++ b/pcsx2/GS/Renderers/OpenGL/GSDeviceOGL.h @@ -311,10 +311,6 @@ public: void DrawIndexedPrimitive(); void DrawIndexedPrimitive(int offset, int count); - void ClearRenderTarget(GSTexture* t, u32 c) override; - void InvalidateRenderTarget(GSTexture* t) override; - void ClearDepth(GSTexture* t, float d) override; - std::unique_ptr CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) override; GSTexture* InitPrimDateTexture(GSTexture* rt, const GSVector4i& area, bool datm); diff --git a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp index 71839a28e6..e92fd22291 100644 --- a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp +++ b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp @@ -790,21 +790,6 @@ void GSDeviceVK::DrawIndexedPrimitive(int offset, int count) vkCmdDrawIndexed(g_vulkan_context->GetCurrentCommandBuffer(), count, 1, m_index.start + offset, m_vertex.start, 0); } -void GSDeviceVK::ClearRenderTarget(GSTexture* t, u32 c) -{ - t->SetClearColor(c); -} - -void GSDeviceVK::InvalidateRenderTarget(GSTexture* t) -{ - t->SetState(GSTexture::State::Invalidated); -} - -void GSDeviceVK::ClearDepth(GSTexture* t, float d) -{ - t->SetClearDepth(d); -} - VkFormat GSDeviceVK::LookupNativeFormat(GSTexture::Format format) const { static constexpr std::array(GSTexture::Format::BC7) + 1> s_format_mapping = {{ diff --git a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.h b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.h index a25356ddbf..a20b825b81 100644 --- a/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.h +++ b/pcsx2/GS/Renderers/Vulkan/GSDeviceVK.h @@ -265,10 +265,6 @@ public: void DrawIndexedPrimitive(); void DrawIndexedPrimitive(int offset, int count); - void ClearRenderTarget(GSTexture* t, u32 c) override; - void InvalidateRenderTarget(GSTexture* t) override; - void ClearDepth(GSTexture* t, float d) override; - std::unique_ptr CreateDownloadTexture(u32 width, u32 height, GSTexture::Format format) override; void CopyRect(GSTexture* sTex, GSTexture* dTex, const GSVector4i& r, u32 destX, u32 destY) override;