[dawn][d3d12] Reenable TextureCompressionBCSliced3D

Fix the assert that was being triggered when this was first enabled.
The last row copy height is not always 1, but that of the block height.

Bug: 412679384, 342840940
Change-Id: I2ca74bc3f14078b46e0dc01d7bd3e73ac697d82b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/239136
Reviewed-by: Fr <beaufort.francois@gmail.com>
Auto-Submit: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp b/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
index 8224d90..9059992 100644
--- a/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
+++ b/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
@@ -146,6 +146,7 @@
 
 void PhysicalDevice::InitializeSupportedFeaturesImpl() {
     EnableFeature(Feature::TextureCompressionBC);
+    EnableFeature(Feature::TextureCompressionBCSliced3D);
     EnableFeature(Feature::DawnMultiPlanarFormats);
     EnableFeature(Feature::Depth32FloatStencil8);
     EnableFeature(Feature::IndirectFirstInstance);
diff --git a/src/dawn/native/d3d12/TextureCopySplitter.cpp b/src/dawn/native/d3d12/TextureCopySplitter.cpp
index 016ec8f..d5606b6 100644
--- a/src/dawn/native/d3d12/TextureCopySplitter.cpp
+++ b/src/dawn/native/d3d12/TextureCopySplitter.cpp
@@ -541,7 +541,7 @@
     copySize2.depthOrArrayLayers = 1;
     Origin3D bufferOffset2 = bufferOffset1;
     bufferOffset2 = texelOffsetForLastRowOfLastImage;
-    DAWN_ASSERT(copySize2.height == 1);
+    DAWN_ASSERT(copySize2.height == blockInfo.height);
     ComputeSourceRegionForCopyInfo(copy2, direction, bufferOffset2, textureOffset2, copySize2);
     Extent3D bufferSize2 = {copy1->GetBufferSize().width, bufferOffset2.y + copySize2.height, 1};
     FillFootprintAndOffsetOfBufferLocation(&copy2->bufferLocation, alignedOffset2, bufferSize2,