d3d11: Fix 0 DstZ for CopySubresourceRegion DstZ only must be 0 for 1D/2D textures. It still needs to be set with the right value for 3D textures. Bug: dawn:1908 Bug: dawn:1705 Change-Id: Id160a1c13a6561ac62bb637a52f6c864da96549d Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/140320 Reviewed-by: Peng Huang <penghuang@chromium.org> Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Austin Eng <enga@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/dawn/native/d3d11/TextureD3D11.cpp b/src/dawn/native/d3d11/TextureD3D11.cpp index 2fad2fe..e932329 100644 --- a/src/dawn/native/d3d11/TextureD3D11.cpp +++ b/src/dawn/native/d3d11/TextureD3D11.cpp
@@ -746,7 +746,8 @@ D3D11Aspect(dstSubresources.aspects)); commandContext->GetD3D11DeviceContext1()->CopySubresourceRegion( ToBackend(dst.texture)->GetD3D11Resource(), dstSubresource, dst.origin.x, dst.origin.y, - 0, ToBackend(src.texture)->GetD3D11Resource(), srcSubresource, + dst.texture->GetDimension() == wgpu::TextureDimension::e3D ? dst.origin.z : 0, + ToBackend(src.texture)->GetD3D11Resource(), srcSubresource, isWholeSubresource ? nullptr : &srcBox); }