From 08436ad1e17e9f2f936056a8fa734effffaf9198 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Tue, 30 Jan 2018 02:20:28 +0100 Subject: [PATCH] [d3d11] Get rid of duplicate code in ResolveSubresource --- src/d3d11/d3d11_context.cpp | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/src/d3d11/d3d11_context.cpp b/src/d3d11/d3d11_context.cpp index 4f9c313e..aab7dd52 100644 --- a/src/d3d11/d3d11_context.cpp +++ b/src/d3d11/d3d11_context.cpp @@ -713,17 +713,17 @@ namespace dxvk { GetSubresourceFromIndex(srcFormatInfo.aspect, srcTextureInfo->image->info().mipLevels, SrcSubresource); + const VkImageSubresourceLayers dstSubresourceLayers = { + dstSubresource.aspectMask, + dstSubresource.mipLevel, + dstSubresource.arrayLayer, 1 }; + + const VkImageSubresourceLayers srcSubresourceLayers = { + srcSubresource.aspectMask, + srcSubresource.mipLevel, + srcSubresource.arrayLayer, 1 }; + if (srcDesc.SampleDesc.Count == 1) { - const VkImageSubresourceLayers dstSubresourceLayers = { - dstSubresource.aspectMask, - dstSubresource.mipLevel, - dstSubresource.arrayLayer, 1 }; - - const VkImageSubresourceLayers srcSubresourceLayers = { - srcSubresource.aspectMask, - srcSubresource.mipLevel, - srcSubresource.arrayLayer, 1 }; - EmitCs([ cDstImage = dstTextureInfo->image, cSrcImage = srcTextureInfo->image, @@ -736,22 +736,12 @@ namespace dxvk { cDstImage->mipLevelExtent(cDstLayers.mipLevel)); }); } else if (!srcFormatInfo.flags.test(DxgiFormatFlag::Typeless) - && !srcFormatInfo.flags.test(DxgiFormatFlag::Typeless)) { + && !srcFormatInfo.flags.test(DxgiFormatFlag::Typeless)) { if (dstDesc.Format != srcDesc.Format) { Logger::err("D3D11: ResolveSubresource: Incompatible formats"); return; } - const VkImageSubresourceLayers dstSubresourceLayers = { - dstSubresource.aspectMask, - dstSubresource.mipLevel, - dstSubresource.arrayLayer, 1 }; - - const VkImageSubresourceLayers srcSubresourceLayers = { - srcSubresource.aspectMask, - srcSubresource.mipLevel, - srcSubresource.arrayLayer, 1 }; - EmitCs([ cDstImage = dstTextureInfo->image, cSrcImage = srcTextureInfo->image,