瀏覽代碼

Quick fix to make Editor and examples using BufferGeometry working again after EventTarget changes.

This will need some more thought, before we didn't really do anything about BufferGeometry deallocation.
alteredq 12 年之前
父節點
當前提交
9d0dfbc566
共有 4 個文件被更改,包括 34276 次插入34260 次删除
  1. 34132 34124
      build/three.js
  2. 135 135
      build/three.min.js
  3. 8 0
      src/core/BufferGeometry.js
  4. 1 1
      src/renderers/WebGLRenderer.js

文件差異過大導致無法顯示
+ 34132 - 34124
build/three.js


文件差異過大導致無法顯示
+ 135 - 135
build/three.min.js


+ 8 - 0
src/core/BufferGeometry.js

@@ -4,6 +4,8 @@
 
 THREE.BufferGeometry = function () {
 
+	THREE.EventTarget.call( this );
+
 	this.id = THREE.GeometryIdCount ++;
 
 	// attributes
@@ -540,6 +542,12 @@ THREE.BufferGeometry.prototype = {
 		this.hasTangents = true;
 		this.tangentsNeedUpdate = true;
 
+	},
+
+	deallocate: function () {
+
+		this.dispatchEvent( { type: 'deallocate' } );
+
 	}
 
 };

+ 1 - 1
src/renderers/WebGLRenderer.js

@@ -5240,7 +5240,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 		if ( material.needsUpdate ) {
 
-			if ( material.program ) _this.deallocateMaterial( material );
+			if ( material.program ) deallocateMaterial( material );
 
 			_this.initMaterial( material, lights, fog, object );
 			material.needsUpdate = false;

部分文件因文件數量過多而無法顯示