Browse Source

Updated builds.

Mr.doob 10 years ago
parent
commit
c2ca86c527
2 changed files with 14 additions and 24 deletions
  1. 9 19
      build/three.js
  2. 5 5
      build/three.min.js

+ 9 - 19
build/three.js

@@ -23889,17 +23889,7 @@ THREE.WebGLObjects = function ( gl, properties, info ) {
 
 	function updateAttribute( attribute, name ) {
 
-		var bufferType;
-
-		if ( name === 'index' || name === 'wireframe' ) {
-
-			bufferType = gl.ELEMENT_ARRAY_BUFFER;
-
-		} else {
-
-			bufferType = gl.ARRAY_BUFFER;
-
-		}
+		var bufferType = name === 'index' ? gl.ELEMENT_ARRAY_BUFFER : gl.ARRAY_BUFFER;
 
 		var data = ( attribute instanceof THREE.InterleavedBufferAttribute ) ? attribute.data : attribute;
 
@@ -23979,16 +23969,16 @@ THREE.WebGLObjects = function ( gl, properties, info ) {
 
 	function getWireframeAttribute( geometry ) {
 
-		var attributes = geometry.attributes;
-
-		if ( attributes.wireframe !== undefined ) {
+		if ( geometry._wireframe !== undefined ) {
 
-			return attributes.wireframe;
+			return geometry._wireframe;
 
 		}
 
 		var indices = [];
 
+		var attributes = geometry.attributes;
+
 		var index = attributes.index;
 		var position = attributes.position;
 
@@ -23999,7 +23989,7 @@ THREE.WebGLObjects = function ( gl, properties, info ) {
 			var edges = {};
 			var array = index.array;
 
-			for ( var i = 0, j = 0, l = array.length; i < l; i += 3 ) {
+			for ( var i = 0, l = array.length; i < l; i += 3 ) {
 
 				var a = array[ i + 0 ];
 				var b = array[ i + 1 ];
@@ -24015,7 +24005,7 @@ THREE.WebGLObjects = function ( gl, properties, info ) {
 
 			var array = position.array;
 
-			for ( var i = 0, j = 0, l = ( array.length / 3 ) - 1; i < l; i += 3 ) {
+			for ( var i = 0, l = ( array.length / 3 ) - 1; i < l; i += 3 ) {
 
 				var a = i + 0;
 				var b = i + 1;
@@ -24032,9 +24022,9 @@ THREE.WebGLObjects = function ( gl, properties, info ) {
 		var TypeArray = position.count > 65535 ? Uint32Array : Uint16Array;
 		var attribute = new THREE.BufferAttribute( new TypeArray( indices ), 1 );
 
-		updateAttribute( attribute, 'wireframe' );
+		updateAttribute( attribute, 'index' );
 
-		geometry.addAttribute( 'wireframe', attribute );
+		geometry._wireframe = attribute;
 
 		return attribute;
 

+ 5 - 5
build/three.min.js

@@ -582,12 +582,12 @@ THREE.WebGLExtensions=function(a){var b={};this.get=function(c){if(void 0!==b[c]
 break;case "WEBGL_compressed_texture_pvrtc":d=a.getExtension("WEBGL_compressed_texture_pvrtc")||a.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:d=a.getExtension(c)}null===d&&console.warn("THREE.WebGLRenderer: "+c+" extension not supported.");return b[c]=d}};
 THREE.WebGLGeometries=function(a,b,c){function d(g){g=g.target;var f=e[g.id].attributes,h;for(h in f){var k=f[h],l;l=k;l=l instanceof THREE.InterleavedBufferAttribute?b.get(l.data).__webglBuffer:b.get(l).__webglBuffer;void 0!==l&&(a.deleteBuffer(l),k instanceof THREE.InterleavedBufferAttribute?b.delete(k.data):b.delete(k))}g.removeEventListener("dispose",d);delete e[g.id];c.memory.geometries--}var e={};this.get=function(a){var b=a.geometry;if(void 0!==e[b.id])return e[b.id];b.addEventListener("dispose",
 d);var h;b instanceof THREE.BufferGeometry?h=b:b instanceof THREE.Geometry&&(void 0===b._bufferGeometry&&(b._bufferGeometry=(new THREE.BufferGeometry).setFromObject(a)),h=b._bufferGeometry);e[b.id]=h;c.memory.geometries++;return h}};
-THREE.WebGLObjects=function(a,b,c){function d(a){a.target.traverse(function(a){a.removeEventListener("remove",d);(a instanceof THREE.Mesh||a instanceof THREE.PointCloud||a instanceof THREE.Line)&&delete f[a.id];delete a._modelViewMatrix;delete a._normalMatrix;b.delete(a)})}function e(c,d){var e;e="index"===d||"wireframe"===d?a.ELEMENT_ARRAY_BUFFER:a.ARRAY_BUFFER;var f=c instanceof THREE.InterleavedBufferAttribute?c.data:c,g=b.get(f);if(void 0===g.__webglBuffer){g.__webglBuffer=a.createBuffer();a.bindBuffer(e,
-g.__webglBuffer);var h=a.STATIC_DRAW;if(f instanceof THREE.DynamicBufferAttribute||f instanceof THREE.InstancedBufferAttribute&&!0===f.dynamic||f instanceof THREE.InterleavedBuffer&&!0===f.dynamic)h=a.DYNAMIC_DRAW;a.bufferData(e,f.array,h);g.version=f.version}else g.version!==f.version&&(a.bindBuffer(e,g.__webglBuffer),void 0===f.updateRange||-1===f.updateRange.count?a.bufferSubData(e,0,f.array):0===f.updateRange.count?console.error("THREE.WebGLObjects.updateBuffer: using updateRange for THREE.DynamicBufferAttribute and marked as needsUpdate but count is 0, ensure you are using set methods or updating manually."):
+THREE.WebGLObjects=function(a,b,c){function d(a){a.target.traverse(function(a){a.removeEventListener("remove",d);(a instanceof THREE.Mesh||a instanceof THREE.PointCloud||a instanceof THREE.Line)&&delete f[a.id];delete a._modelViewMatrix;delete a._normalMatrix;b.delete(a)})}function e(c,d){var e="index"===d?a.ELEMENT_ARRAY_BUFFER:a.ARRAY_BUFFER,f=c instanceof THREE.InterleavedBufferAttribute?c.data:c,g=b.get(f);if(void 0===g.__webglBuffer){g.__webglBuffer=a.createBuffer();a.bindBuffer(e,g.__webglBuffer);
+var h=a.STATIC_DRAW;if(f instanceof THREE.DynamicBufferAttribute||f instanceof THREE.InstancedBufferAttribute&&!0===f.dynamic||f instanceof THREE.InterleavedBuffer&&!0===f.dynamic)h=a.DYNAMIC_DRAW;a.bufferData(e,f.array,h);g.version=f.version}else g.version!==f.version&&(a.bindBuffer(e,g.__webglBuffer),void 0===f.updateRange||-1===f.updateRange.count?a.bufferSubData(e,0,f.array):0===f.updateRange.count?console.error("THREE.WebGLObjects.updateBuffer: using updateRange for THREE.DynamicBufferAttribute and marked as needsUpdate but count is 0, ensure you are using set methods or updating manually."):
 (a.bufferSubData(e,f.updateRange.offset*f.array.BYTES_PER_ELEMENT,f.array.subarray(f.updateRange.offset,f.updateRange.offset+f.updateRange.count)),f.updateRange.count=0),g.version=f.version)}function g(a,b,c){b=b<c?b+"_"+c:c+"_"+b;if(a.hasOwnProperty(b))return!1;a[b]=1;return!0}var f={},h=new THREE.WebGLGeometries(a,b,c);this.objects=f;this.init=function(a){var c=b.get(a);void 0===c.__webglInit&&(c.__webglInit=!0,a._modelViewMatrix=new THREE.Matrix4,a._normalMatrix=new THREE.Matrix3,a.addEventListener("removed",
-d));void 0===c.__webglActive&&(c.__webglActive=!0,a instanceof THREE.Mesh||a instanceof THREE.Line||a instanceof THREE.PointCloud)&&(f[a.id]={id:a.id,object:a,z:0})};this.getAttributeBuffer=function(a){return a instanceof THREE.InterleavedBufferAttribute?b.get(a.data).__webglBuffer:b.get(a).__webglBuffer};this.getWireframeAttribute=function(a){var b=a.attributes;if(void 0!==b.wireframe)return b.wireframe;var c=[],d=b.index,b=b.position;console.time("wireframe");if(void 0!==d)for(var f={},d=d.array,
-h=0,t=d.length;h<t;h+=3){var r=d[h+0],u=d[h+1],w=d[h+2];g(f,r,u)&&c.push(r,u);g(f,u,w)&&c.push(u,w);g(f,w,r)&&c.push(w,r)}else for(d=b.array,h=0,t=d.length/3-1;h<t;h+=3)r=h+0,u=h+1,w=h+2,c.push(r,u,u,w,w,r);console.timeEnd("wireframe");c=new THREE.BufferAttribute(new (65535<b.count?Uint32Array:Uint16Array)(c),1);e(c,"wireframe");a.addAttribute("wireframe",c);return c};this.update=function(a){var b=h.get(a);a.geometry instanceof THREE.Geometry&&b.updateFromObject(a);a=b.attributes;for(var c in a)e(a[c],
-c);a=b.morphAttributes;for(c in a)for(var d=a[c],f=0,g=d.length;f<g;f++)e(d[f],f);return b};this.updateAttribute=e;this.clear=function(){f={}}};
+d));void 0===c.__webglActive&&(c.__webglActive=!0,a instanceof THREE.Mesh||a instanceof THREE.Line||a instanceof THREE.PointCloud)&&(f[a.id]={id:a.id,object:a,z:0})};this.getAttributeBuffer=function(a){return a instanceof THREE.InterleavedBufferAttribute?b.get(a.data).__webglBuffer:b.get(a).__webglBuffer};this.getWireframeAttribute=function(a){if(void 0!==a._wireframe)return a._wireframe;var b=[],c=a.attributes,d=c.index,c=c.position;console.time("wireframe");if(void 0!==d)for(var f={},d=d.array,
+h=0,t=d.length;h<t;h+=3){var r=d[h+0],u=d[h+1],w=d[h+2];g(f,r,u)&&b.push(r,u);g(f,u,w)&&b.push(u,w);g(f,w,r)&&b.push(w,r)}else for(d=c.array,h=0,t=d.length/3-1;h<t;h+=3)r=h+0,u=h+1,w=h+2,b.push(r,u,u,w,w,r);console.timeEnd("wireframe");b=new THREE.BufferAttribute(new (65535<c.count?Uint32Array:Uint16Array)(b),1);e(b,"index");return a._wireframe=b};this.update=function(a){var b=h.get(a);a.geometry instanceof THREE.Geometry&&b.updateFromObject(a);a=b.attributes;for(var c in a)e(a[c],c);a=b.morphAttributes;
+for(c in a)for(var d=a[c],f=0,g=d.length;f<g;f++)e(d[f],f);return b};this.updateAttribute=e;this.clear=function(){f={}}};
 THREE.WebGLProgram=function(){function a(a){var b=[],c;for(c in a){var f=a[c];!1!==f&&b.push("#define "+c+" "+f)}return b.join("\n")}function b(a){return""!==a}var c=0;return function(d,e,g,f){var h=d.context,k=g.defines,l=g.__webglShader.vertexShader,n=g.__webglShader.fragmentShader,p="SHADOWMAP_TYPE_BASIC";f.shadowMapType===THREE.PCFShadowMap?p="SHADOWMAP_TYPE_PCF":f.shadowMapType===THREE.PCFSoftShadowMap&&(p="SHADOWMAP_TYPE_PCF_SOFT");var m="ENVMAP_TYPE_CUBE",q="ENVMAP_MODE_REFLECTION",t="ENVMAP_BLENDING_MULTIPLY";
 if(f.envMap){switch(g.envMap.mapping){case THREE.CubeReflectionMapping:case THREE.CubeRefractionMapping:m="ENVMAP_TYPE_CUBE";break;case THREE.EquirectangularReflectionMapping:case THREE.EquirectangularRefractionMapping:m="ENVMAP_TYPE_EQUIREC";break;case THREE.SphericalReflectionMapping:m="ENVMAP_TYPE_SPHERE"}switch(g.envMap.mapping){case THREE.CubeRefractionMapping:case THREE.EquirectangularRefractionMapping:q="ENVMAP_MODE_REFRACTION"}switch(g.combine){case THREE.MultiplyOperation:t="ENVMAP_BLENDING_MULTIPLY";
 break;case THREE.MixOperation:t="ENVMAP_BLENDING_MIX";break;case THREE.AddOperation:t="ENVMAP_BLENDING_ADD"}}var r=0<d.gammaFactor?d.gammaFactor:1,u=a(k),w=h.createProgram();g instanceof THREE.RawShaderMaterial?d=k="":(k=["precision "+f.precision+" float;","precision "+f.precision+" int;","#define SHADER_NAME "+g.__webglShader.name,u,f.supportsVertexTextures?"#define VERTEX_TEXTURES":"",d.gammaInput?"#define GAMMA_INPUT":"",d.gammaOutput?"#define GAMMA_OUTPUT":"","#define GAMMA_FACTOR "+r,"#define MAX_DIR_LIGHTS "+