浏览代码

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

Michael Herzog 1 年之前
父节点
当前提交
d34df93280
共有 2 个文件被更改,包括 6 次插入6 次删除
  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 );
 
 		}