瀏覽代碼

WebGLDeferredRenderer: updating scenegraph just once per frame.

alteredq 12 年之前
父節點
當前提交
e13a1aea67
共有 1 個文件被更改,包括 5 次插入0 次删除
  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 );