From a56679bc050025863de5978dd094e4f5499b7114 Mon Sep 17 00:00:00 2001 From: Spiri0 Date: Sun, 8 Sep 2024 22:20:35 +0200 Subject: [PATCH 1/2] Extension of the copyTextureToTexture function to also be able to use array textures --- src/renderers/webgpu/WebGPUBackend.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/renderers/webgpu/WebGPUBackend.js b/src/renderers/webgpu/WebGPUBackend.js index 4c4efe826a6834..ff0ca95a626e63 100644 --- a/src/renderers/webgpu/WebGPUBackend.js +++ b/src/renderers/webgpu/WebGPUBackend.js @@ -1401,9 +1401,11 @@ class WebGPUBackend extends Backend { let dstX = 0; let dstY = 0; + let dstLayer = 0; let srcX = 0; let srcY = 0; + let srcLayer = 0; let srcWidth = srcTexture.image.width; let srcHeight = srcTexture.image.height; @@ -1412,6 +1414,7 @@ class WebGPUBackend extends Backend { srcX = srcRegion.x; srcY = srcRegion.y; + srcLayer = srcRegion.z || 0; srcWidth = srcRegion.width; srcHeight = srcRegion.height; @@ -1421,6 +1424,7 @@ class WebGPUBackend extends Backend { dstX = dstPosition.x; dstY = dstPosition.y; + dstLayer = dstPosition.z || 0; } @@ -1433,16 +1437,17 @@ class WebGPUBackend extends Backend { { texture: sourceGPU, mipLevel: level, - origin: { x: srcX, y: srcY, z: 0 } + origin: { x: srcX, y: srcY, z: srcLayer } }, { texture: destinationGPU, mipLevel: level, - origin: { x: dstX, y: dstY, z: 0 } + origin: { x: dstX, y: dstY, z: dstLayer } }, [ srcWidth, - srcHeight + srcHeight, + 1 ] ); From 2a3199ba24dffc20f684540881cc027a62629bd4 Mon Sep 17 00:00:00 2001 From: Spiri0 <69024222+Spiri0@users.noreply.github.com> Date: Sun, 8 Sep 2024 22:41:37 +0200 Subject: [PATCH 2/2] Update WebGPUBackend.js remove empty space --- src/renderers/webgpu/WebGPUBackend.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/renderers/webgpu/WebGPUBackend.js b/src/renderers/webgpu/WebGPUBackend.js index ff0ca95a626e63..3ba281f1116f1d 100644 --- a/src/renderers/webgpu/WebGPUBackend.js +++ b/src/renderers/webgpu/WebGPUBackend.js @@ -1447,7 +1447,7 @@ class WebGPUBackend extends Backend { [ srcWidth, srcHeight, - 1 + 1 ] );