Browse Source

WebGLBackground: Make sure buffers are writable before clear. (#28446)

Michael Herzog 1 year ago
parent
commit
d34df93280
2 changed files with 6 additions and 6 deletions
  1. 0 6
      src/renderers/WebGLRenderer.js
  2. 6 0
      src/renderers/webgl/WebGLBackground.js

+ 0 - 6
src/renderers/WebGLRenderer.js

@@ -1533,12 +1533,6 @@ class WebGLRenderer {
 
 			_this.toneMapping = currentToneMapping;
 
-			// buffers might not be writable after rendering transmission which is required to ensure a correct clear
-
-			state.buffers.depth.setTest( true );
-			state.buffers.depth.setMask( true );
-			state.buffers.color.setMask( true );
-
 		}
 
 		function renderObjects( renderList, scene, camera ) {

+ 6 - 0
src/renderers/webgl/WebGLBackground.js

@@ -71,6 +71,12 @@ function WebGLBackground( renderer, cubemaps, cubeuvmaps, state, objects, alpha,
 
 		if ( renderer.autoClear || forceClear ) {
 
+			// buffers might not be writable which is required to ensure a correct clear
+
+			state.buffers.depth.setTest( true );
+			state.buffers.depth.setMask( true );
+			state.buffers.color.setMask( true );
+
 			renderer.clear( renderer.autoClearColor, renderer.autoClearDepth, renderer.autoClearStencil );
 
 		}