From b52c31666f3a247b7e5fc8b2af4ac448ddd77514 Mon Sep 17 00:00:00 2001 From: Renaud Rohlinger Date: Thu, 31 Mar 2022 17:38:50 +0900 Subject: [PATCH] WebGLMultipleRenderTargets fix copy method texture[i].isRenderTargetTexture and depthTexture.clone (#23781) Fixed MRT copy method: - texture[i] needed `isRenderTargetTexture = true` - Aligned the copy method of the depthTexture with WebGLRenderTarget (see #23462) --- src/renderers/WebGLMultipleRenderTargets.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/renderers/WebGLMultipleRenderTargets.js b/src/renderers/WebGLMultipleRenderTargets.js index a5fb5a176b53c8..a0bff130049bf0 100644 --- a/src/renderers/WebGLMultipleRenderTargets.js +++ b/src/renderers/WebGLMultipleRenderTargets.js @@ -59,13 +59,15 @@ class WebGLMultipleRenderTargets extends WebGLRenderTarget { this.depthBuffer = source.depthBuffer; this.stencilBuffer = source.stencilBuffer; - this.depthTexture = source.depthTexture; + + if ( source.depthTexture !== null ) this.depthTexture = source.depthTexture.clone(); this.texture.length = 0; for ( let i = 0, il = source.texture.length; i < il; i ++ ) { this.texture[ i ] = source.texture[ i ].clone(); + this.texture[ i ].isRenderTargetTexture = true; }