Browse Source

WebGLDeferredRenderer: updating scenegraph just once per frame.

alteredq 12 năm trước cách đây
mục cha
commit
e13a1aea67
1 tập tin đã thay đổi với 5 bổ sung0 xóa
  1. 5 0
      examples/js/renderers/WebGLDeferredRenderer.js

+ 5 - 0
examples/js/renderers/WebGLDeferredRenderer.js

@@ -496,6 +496,9 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
 
 		scene.traverse( initDeferredProperties );
 
+		this.renderer.autoUpdateScene = false;
+		scene.updateMatrixWorld();
+
 		// g-buffer color
 
 		scene.traverse( setMaterialColor );
@@ -511,6 +514,8 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
 		scene.traverse( setMaterialNormal );
 		compNormal.render();
 
+		this.renderer.autoUpdateScene = true;
+
 		// light pass
 
 		camera.projectionMatrixInverse.getInverse( camera.projectionMatrix );