Jelajahi Sumber

WebGLRenderer: Fixed transmission rendering when using ArrayCamera (#23491)

* WebGLRenderer: Fixed transmission rendering when using ArrayCamera.

* WebGLRenderer: Reset polygonOffset inside renderScene too.
mrdoob 3 tahun lalu
induk
melakukan
e4b2edb8e0
1 mengubah file dengan 8 tambahan dan 8 penghapusan
  1. 8 8
      src/renderers/WebGLRenderer.js

+ 8 - 8
src/renderers/WebGLRenderer.js

@@ -1010,14 +1010,6 @@ function WebGLRenderer( parameters = {} ) {
 
 		if ( scene.isScene === true ) scene.onAfterRender( _this, scene, camera );
 
-		// Ensure depth buffer writing is enabled so it can be cleared on next render
-
-		state.buffers.depth.setTest( true );
-		state.buffers.depth.setMask( true );
-		state.buffers.color.setMask( true );
-
-		state.setPolygonOffset( false );
-
 		// _gl.finish();
 
 		bindingStates.resetDefaultState();
@@ -1180,6 +1172,14 @@ function WebGLRenderer( parameters = {} ) {
 		if ( transmissiveObjects.length > 0 ) renderObjects( transmissiveObjects, scene, camera );
 		if ( transparentObjects.length > 0 ) renderObjects( transparentObjects, scene, camera );
 
+		// Ensure depth buffer writing is enabled so it can be cleared on next render
+
+		state.buffers.depth.setTest( true );
+		state.buffers.depth.setMask( true );
+		state.buffers.color.setMask( true );
+
+		state.setPolygonOffset( false );
+
 	}
 
 	function renderTransmissionPass( opaqueObjects, scene, camera ) {