Просмотр исходного кода

WebGPURenderer: Restore framebuffer after clear. (#33512)

Michael Herzog 1 месяц назад
Родитель
Сommit
31c56edf21
1 измененных файлов с 8 добавлено и 0 удалено
  1. 8 0
      src/renderers/webgl-fallback/WebGLBackend.js

+ 8 - 0
src/renderers/webgl-fallback/WebGLBackend.js

@@ -832,6 +832,14 @@ class WebGLBackend extends Backend {
 
 				if ( setFrameBuffer && resolveRenderTarget ) this._resolveRenderTarget( descriptor );
 
+				// Restore the framebuffer of the active render pass when clearing an unrelated
+				// render target, so subsequent draws in the pass don't bind to the cleared target.
+				if ( setFrameBuffer && this._currentContext !== null && this._currentContext !== descriptor ) {
+
+					this._setFramebuffer( this._currentContext );
+
+				}
+
 			}
 
 		}

粤ICP备19079148号