From 296aacb23e5ce9a50dcdf8a37dd454bd6b94a4fa Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Fri, 17 Jan 2020 17:37:15 +0100 Subject: [PATCH] [d3d9] Return specific image view from GetSampleView Lets us have pick the sRGB-ness of the view in one place. Needed for the next patch. --- src/d3d9/d3d9_common_texture.h | 4 ++-- src/d3d9/d3d9_device.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/d3d9/d3d9_common_texture.h b/src/d3d9/d3d9_common_texture.h index 828fb2aa..a815b16a 100644 --- a/src/d3d9/d3d9_common_texture.h +++ b/src/d3d9/d3d9_common_texture.h @@ -331,8 +331,8 @@ namespace dxvk { bool SetDirty(UINT Subresource, bool value) { return std::exchange(m_dirty[Subresource], value); } void MarkAllDirty() { for (uint32_t i = 0; i < m_dirty.size(); i++) m_dirty[i] = true; } - const D3D9ColorView& GetSampleView() const { - return m_sampleView; + const Rc& GetSampleView(bool srgb) const { + return m_sampleView.Pick(srgb); } VkImageLayout DetermineRenderTargetLayout() const { diff --git a/src/d3d9/d3d9_device.cpp b/src/d3d9/d3d9_device.cpp index 2fd5bb5e..bc5f2184 100644 --- a/src/d3d9/d3d9_device.cpp +++ b/src/d3d9/d3d9_device.cpp @@ -4058,7 +4058,7 @@ namespace dxvk { void D3D9DeviceEx::GenerateMips( D3D9CommonTexture* pResource) { EmitCs([ - cImageView = pResource->GetSampleView().Color + cImageView = pResource->GetSampleView(false) ] (DxvkContext* ctx) { ctx->generateMipmaps(cImageView); }); @@ -5289,7 +5289,7 @@ namespace dxvk { cColorSlot = colorSlot, cDepthSlot = depthSlot, cDepth = commonTex->IsShadow(), - cImageView = commonTex->GetSampleView().Pick(srgb) + cImageView = commonTex->GetSampleView(srgb) ](DxvkContext* ctx) { ctx->bindResourceView(cColorSlot, !cDepth ? cImageView : nullptr, nullptr); ctx->bindResourceView(cDepthSlot, cDepth ? cImageView : nullptr, nullptr);