瀏覽代碼

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

File diff suppressed because it is too large
+ 34132 - 34124
build/three.js


File diff suppressed because it is too large
+ 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;

Some files were not shown because too many files changed in this diff