From 9c197530da45f14cec555c757877c963b501a820 Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Tue, 21 Oct 2014 01:08:00 +0200 Subject: [PATCH] Updated builds. --- build/three.js | 47 ++++++------- build/three.min.js | 163 ++++++++++++++++++++++----------------------- 2 files changed, 102 insertions(+), 108 deletions(-) diff --git a/build/three.js b/build/three.js index 6d6dcf2185..b017930daa 100644 --- a/build/three.js +++ b/build/three.js @@ -29772,7 +29772,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { for ( i = 0; i < flen; i ++ ) { face = faces[ i ]; - f3( face[ 2 ]+ offset, face[ 1 ]+ offset, face[ 0 ] + offset, true ); + f3( face[ 2 ]+ offset, face[ 1 ]+ offset, face[ 0 ] + offset ); } @@ -29784,7 +29784,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { for ( i = 0; i < flen; i ++ ) { face = faces[ i ]; - f3( face[ 0 ] + offset, face[ 1 ] + offset, face[ 2 ] + offset, false ); + f3( face[ 0 ] + offset, face[ 1 ] + offset, face[ 2 ] + offset ); } @@ -29795,7 +29795,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { for ( i = 0; i < flen; i ++ ) { face = faces[ i ]; - f3( face[ 2 ], face[ 1 ], face[ 0 ], true ); + f3( face[ 2 ], face[ 1 ], face[ 0 ] ); } @@ -29804,7 +29804,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { for ( i = 0; i < flen; i ++ ) { face = faces[ i ]; - f3( face[ 0 ] + vlen * steps, face[ 1 ] + vlen * steps, face[ 2 ] + vlen * steps, false ); + f3( face[ 0 ] + vlen * steps, face[ 1 ] + vlen * steps, face[ 2 ] + vlen * steps ); } } @@ -29870,7 +29870,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { } - function f3( a, b, c, isBottom ) { + function f3( a, b, c ) { a += shapesOffset; b += shapesOffset; @@ -29879,7 +29879,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { // normal, color, material scope.faces.push( new THREE.Face3( a, b, c, null, null, material ) ); - var uvs = isBottom ? uvgen.generateBottomUV( scope, shape, options, a, b, c ) : uvgen.generateTopUV( scope, shape, options, a, b, c ); + var uvs = uvgen.generateTopUV( scope, a, b, c ); scope.faceVertexUvs[ 0 ].push( uvs ); @@ -29895,8 +29895,7 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { scope.faces.push( new THREE.Face3( a, b, d, null, null, extrudeMaterial ) ); scope.faces.push( new THREE.Face3( b, c, d, null, null, extrudeMaterial ) ); - var uvs = uvgen.generateSideWallUV( scope, shape, wallContour, options, a, b, c, d, - stepIndex, stepsLength, contourIndex1, contourIndex2 ); + var uvs = uvgen.generateSideWallUV( scope, a, b, c, d ); scope.faceVertexUvs[ 0 ].push( [ uvs[ 0 ], uvs[ 1 ], uvs[ 3 ] ] ); scope.faceVertexUvs[ 0 ].push( [ uvs[ 1 ], uvs[ 2 ], uvs[ 3 ] ] ); @@ -29907,11 +29906,13 @@ THREE.ExtrudeGeometry.prototype.addShape = function ( shape, options ) { THREE.ExtrudeGeometry.WorldUVGenerator = { - generateTopUV: function( geometry, extrudedShape, extrudeOptions, indexA, indexB, indexC ) { - - var a = geometry.vertices[ indexA ]; - var b = geometry.vertices[ indexB ]; - var c = geometry.vertices[ indexC ]; + generateTopUV: function ( geometry, indexA, indexB, indexC ) { + + var vertices = geometry.vertices; + + var a = vertices[ indexA ]; + var b = vertices[ indexB ]; + var c = vertices[ indexC ]; return [ new THREE.Vector2( a.x, a.y ), @@ -29921,20 +29922,14 @@ THREE.ExtrudeGeometry.WorldUVGenerator = { }, - generateBottomUV: function( geometry, extrudedShape, extrudeOptions, indexA, indexB, indexC ) { + generateSideWallUV: function ( geometry, indexA, indexB, indexC, indexD ) { - return this.generateTopUV( geometry, extrudedShape, extrudeOptions, indexA, indexB, indexC ); - - }, - - generateSideWallUV: function( geometry, extrudedShape, wallContour, extrudeOptions, - indexA, indexB, indexC, indexD, stepIndex, stepsLength, - contourIndex1, contourIndex2 ) { + var vertices = geometry.vertices; - var a = geometry.vertices[ indexA ]; - var b = geometry.vertices[ indexB ]; - var c = geometry.vertices[ indexC ]; - var d = geometry.vertices[ indexD ]; + var a = vertices[ indexA ]; + var b = vertices[ indexB ]; + var c = vertices[ indexC ]; + var d = vertices[ indexD ]; if ( Math.abs( a.y - b.y ) < 0.01 ) { return [ @@ -30084,7 +30079,7 @@ THREE.ShapeGeometry.prototype.addShape = function ( shape, options ) { var c = face[ 2 ] + shapesOffset; this.faces.push( new THREE.Face3( a, b, c, null, null, material ) ); - this.faceVertexUvs[ 0 ].push( uvgen.generateBottomUV( this, shape, options, a, b, c ) ); + this.faceVertexUvs[ 0 ].push( uvgen.generateTopUV( this, a, b, c ) ); } diff --git a/build/three.min.js b/build/three.min.js index c35fd97a85..ead5c47e23 100644 --- a/build/three.min.js +++ b/build/three.min.js @@ -434,76 +434,76 @@ THREE.WebGLRenderer=function(a){function b(a){var b=a.geometry;a=a.material;var f),a.__skinWeightArray=new Float32Array(4*f));c=null!==sa.get("OES_element_index_uint")&&21845Aa;Aa++)Eb=ba[Aa],Ta[Sa]=Eb.x,Ta[Sa+1]=Eb.y,Ta[Sa+2]=Eb.z,Sa+=3;else for(Aa=0;3>Aa;Aa++)Ta[Sa]=db.x,Ta[Sa+1]=db.y,Ta[Sa+2]=db.z,Sa+=3;l.bindBuffer(l.ARRAY_BUFFER,F.__webglNormalBuffer);l.bufferData(l.ARRAY_BUFFER,Ta,J)}if(Ic&&ua){M=0;for(Y=N.length;MAa;Aa++)Ma=ya[Aa],wb[ub]=Ma.x,wb[ub+1]=Ma.y,ub+=2;0Aa;Aa++)Bb=ia[Aa],hb[vb]=Bb.x,hb[vb+1]=Bb.y,vb+=2;0Aa;Aa++)Cb=ba[Aa],Ta[Sa]=Cb.x,Ta[Sa+1]=Cb.y,Ta[Sa+2]=Cb.z,Sa+=3;else for(Aa=0;3>Aa;Aa++)Ta[Sa]=db.x,Ta[Sa+1]=db.y,Ta[Sa+2]=db.z,Sa+=3;l.bindBuffer(l.ARRAY_BUFFER,F.__webglNormalBuffer);l.bufferData(l.ARRAY_BUFFER,Ta,J)}if(Ic&&ua){M=0;for(Y=N.length;MAa;Aa++)Ma=ya[Aa],wb[ub]=Ma.x,wb[ub+1]=Ma.y,ub+=2;0Aa;Aa++)Pb=ia[Aa],hb[vb]=Pb.x,hb[vb+1]=Pb.y,vb+=2;0h&&(f[u].counter+=1,k=f[u].hash+"_"+f[u].counter,k in r||(p={id:rc++, -faces3:[],materialIndex:u,vertices:0,numMorphTargets:m,numMorphNormals:n},r[k]=p,q.push(p)));r[k].faces3.push(t);r[k].vertices+=3}a[g]=q;d.groupsNeedUpdate=!1}a=sb[d.id];g=0;for(e=a.length;gh&&(f[u].counter+=1,k=f[u].hash+"_"+f[u].counter,k in r||(p={id:sc++, +faces3:[],materialIndex:u,vertices:0,numMorphTargets:m,numMorphNormals:n},r[k]=p,q.push(p)));r[k].faces3.push(t);r[k].vertices+=3}a[g]=q;d.groupsNeedUpdate=!1}a=Bb[d.id];g=0;for(e=a.length;gDa;Da++)mb[Da]=!H.autoScaleCubemaps||Qb||Ub?Ub?ua.image[Da].image:ua.image[Da]:R(ua.image[Da],Uc);var na=mb[0],ac=THREE.Math.isPowerOfTwo(na.width)&&THREE.Math.isPowerOfTwo(na.height),cb=P(ua.format),Hb=P(ua.type);L(l.TEXTURE_CUBE_MAP,ua,ac);for(Da=0;6>Da;Da++)if(Qb)for(var ib,bc=mb[Da].mipmaps,ha=0,Zb=bc.length;ha=Lc&&console.warn("WebGLRenderer: trying to use "+a+" texture units while this GPU supports only "+ -Lc);Lb+=1;return a}function z(a,b){a._modelViewMatrix.multiplyMatrices(b.matrixWorldInverse,a.matrixWorld);a._normalMatrix.getNormalMatrix(a._modelViewMatrix)}function A(a,b,c,d){a[b]=c.r*c.r*d;a[b+1]=c.g*c.g*d;a[b+2]=c.b*c.b*d}function C(a,b,c,d){a[b]=c.r*d;a[b+1]=c.g*d;a[b+2]=c.b*d}function T(a){a!==Mc&&(l.lineWidth(a),Mc=a)}function G(a,b,c){Nc!==a&&(a?l.enable(l.POLYGON_OFFSET_FILL):l.disable(l.POLYGON_OFFSET_FILL),Nc=a);!a||Oc===b&&Pc===c||(l.polygonOffset(b,c),Oc=b,Pc=c)}function L(a,b,c){c? +16*N);l.uniformMatrix4fv(fa,!1,ea._array);break;case "t":Ia=S;wa=E();l.uniform1i(fa,wa);if(!Ia)continue;if(Ia instanceof THREE.CubeTexture||Ia.image instanceof Array&&6===Ia.image.length){var ua=Ia,Nb=wa;if(6===ua.image.length)if(ua.needsUpdate){ua.image.__webglTextureCube||(ua.addEventListener("dispose",hc),ua.image.__webglTextureCube=l.createTexture(),H.info.memory.textures++);l.activeTexture(l.TEXTURE0+Nb);l.bindTexture(l.TEXTURE_CUBE_MAP,ua.image.__webglTextureCube);l.pixelStorei(l.UNPACK_FLIP_Y_WEBGL, +ua.flipY);for(var Ob=ua instanceof THREE.CompressedTexture,Sb=ua.image[0]instanceof THREE.DataTexture,mb=[],Da=0;6>Da;Da++)mb[Da]=!H.autoScaleCubemaps||Ob||Sb?Sb?ua.image[Da].image:ua.image[Da]:R(ua.image[Da],Wc);var na=mb[0],Zb=THREE.Math.isPowerOfTwo(na.width)&&THREE.Math.isPowerOfTwo(na.height),cb=P(ua.format),Fb=P(ua.type);L(l.TEXTURE_CUBE_MAP,ua,Zb);for(Da=0;6>Da;Da++)if(Ob)for(var ib,$b=mb[Da].mipmaps,ha=0,Xb=$b.length;ha=Mc&&console.warn("WebGLRenderer: trying to use "+a+" texture units while this GPU supports only "+ +Mc);dc+=1;return a}function z(a,b){a._modelViewMatrix.multiplyMatrices(b.matrixWorldInverse,a.matrixWorld);a._normalMatrix.getNormalMatrix(a._modelViewMatrix)}function A(a,b,c,d){a[b]=c.r*c.r*d;a[b+1]=c.g*c.g*d;a[b+2]=c.b*c.b*d}function C(a,b,c,d){a[b]=c.r*d;a[b+1]=c.g*d;a[b+2]=c.b*d}function T(a){a!==Nc&&(l.lineWidth(a),Nc=a)}function G(a,b,c){Oc!==a&&(a?l.enable(l.POLYGON_OFFSET_FILL):l.disable(l.POLYGON_OFFSET_FILL),Oc=a);!a||Pc===b&&Qc===c||(l.polygonOffset(b,c),Pc=b,Qc=c)}function L(a,b,c){c? (l.texParameteri(a,l.TEXTURE_WRAP_S,P(b.wrapS)),l.texParameteri(a,l.TEXTURE_WRAP_T,P(b.wrapT)),l.texParameteri(a,l.TEXTURE_MAG_FILTER,P(b.magFilter)),l.texParameteri(a,l.TEXTURE_MIN_FILTER,P(b.minFilter))):(l.texParameteri(a,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(a,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE),l.texParameteri(a,l.TEXTURE_MAG_FILTER,F(b.magFilter)),l.texParameteri(a,l.TEXTURE_MIN_FILTER,F(b.minFilter)));(c=sa.get("EXT_texture_filter_anisotropic"))&&b.type!==THREE.FloatType&&(1b||a.height>b){var c=b/Math.max(a.width,a.height),d=document.createElement("canvas");d.width=Math.floor(a.width*c);d.height=Math.floor(a.height*c);d.getContext("2d").drawImage(a,0,0,a.width,a.height,0,0,d.width,d.height);console.log("THREE.WebGLRenderer:",a,"is too big ("+a.width+"x"+a.height+"). Resized to "+d.width+"x"+d.height+ ".");return d}return a}function J(a,b){l.bindRenderbuffer(l.RENDERBUFFER,a);b.depthBuffer&&!b.stencilBuffer?(l.renderbufferStorage(l.RENDERBUFFER,l.DEPTH_COMPONENT16,b.width,b.height),l.framebufferRenderbuffer(l.FRAMEBUFFER,l.DEPTH_ATTACHMENT,l.RENDERBUFFER,a)):b.depthBuffer&&b.stencilBuffer?(l.renderbufferStorage(l.RENDERBUFFER,l.DEPTH_STENCIL,b.width,b.height),l.framebufferRenderbuffer(l.FRAMEBUFFER,l.DEPTH_STENCIL_ATTACHMENT,l.RENDERBUFFER,a)):l.renderbufferStorage(l.RENDERBUFFER,l.RGBA4,b.width, @@ -514,23 +514,23 @@ if(a===THREE.RGBAFormat)return l.RGBA;if(a===THREE.LuminanceFormat)return l.LUMI THREE.SrcAlphaFactor)return l.SRC_ALPHA;if(a===THREE.OneMinusSrcAlphaFactor)return l.ONE_MINUS_SRC_ALPHA;if(a===THREE.DstAlphaFactor)return l.DST_ALPHA;if(a===THREE.OneMinusDstAlphaFactor)return l.ONE_MINUS_DST_ALPHA;if(a===THREE.DstColorFactor)return l.DST_COLOR;if(a===THREE.OneMinusDstColorFactor)return l.ONE_MINUS_DST_COLOR;if(a===THREE.SrcAlphaSaturateFactor)return l.SRC_ALPHA_SATURATE;b=sa.get("WEBGL_compressed_texture_s3tc");if(null!==b){if(a===THREE.RGB_S3TC_DXT1_Format)return b.COMPRESSED_RGB_S3TC_DXT1_EXT; if(a===THREE.RGBA_S3TC_DXT1_Format)return b.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(a===THREE.RGBA_S3TC_DXT3_Format)return b.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(a===THREE.RGBA_S3TC_DXT5_Format)return b.COMPRESSED_RGBA_S3TC_DXT5_EXT}b=sa.get("WEBGL_compressed_texture_pvrtc");if(null!==b){if(a===THREE.RGB_PVRTC_4BPPV1_Format)return b.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(a===THREE.RGB_PVRTC_2BPPV1_Format)return b.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(a===THREE.RGBA_PVRTC_4BPPV1_Format)return b.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG; if(a===THREE.RGBA_PVRTC_2BPPV1_Format)return b.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}b=sa.get("EXT_blend_minmax");if(null!==b){if(a===THREE.MinEquation)return b.MIN_EXT;if(a===THREE.MaxEquation)return b.MAX_EXT}return 0}console.log("THREE.WebGLRenderer",THREE.REVISION);a=a||{};var Q=void 0!==a.canvas?a.canvas:document.createElement("canvas"),ka=void 0!==a.context?a.context:null,W=void 0!==a.precision?a.precision:"highp",ba=void 0!==a.alpha?a.alpha:!1,ga=void 0!==a.depth?a.depth:!0,za=void 0!==a.stencil? -a.stencil:!0,O=void 0!==a.antialias?a.antialias:!1,Ma=void 0!==a.premultipliedAlpha?a.premultipliedAlpha:!0,ia=void 0!==a.preserveDrawingBuffer?a.preserveDrawingBuffer:!1,Pa=void 0!==a.logarithmicDepthBuffer?a.logarithmicDepthBuffer:!1,Ja=new THREE.Color(0),db=0,Za=[],$a={},lb=[],Kb=[],pb=[];this.domElement=Q;this.context=null;this.devicePixelRatio=void 0!==a.devicePixelRatio?a.devicePixelRatio:void 0!==self.devicePixelRatio?self.devicePixelRatio:1;this.sortObjects=this.autoClearStencil=this.autoClearDepth= -this.autoClearColor=this.autoClear=!0;this.shadowMapEnabled=this.gammaOutput=this.gammaInput=!1;this.shadowMapAutoUpdate=!0;this.shadowMapType=THREE.PCFShadowMap;this.shadowMapCullFace=THREE.CullFaceFront;this.shadowMapCascade=this.shadowMapDebug=!1;this.maxMorphTargets=8;this.maxMorphNormals=4;this.autoScaleCubemaps=!0;this.renderPluginsPre=[];this.renderPluginsPost=[];this.info={memory:{programs:0,geometries:0,textures:0},render:{calls:0,vertices:0,faces:0,points:0}};var H=this,qb=[],Ab=null,Cb= -null,Bb=-1,Fa=-1,Yb=null,Lb=0,Mb=-1,Nb=-1,Ob=-1,tb=-1,Pb=-1,rb=-1,Qb=-1,Zb=-1,Nc=null,Oc=null,Pc=null,Mc=null,jb=0,kb=0,Rb=Q.width,$b=Q.height,pc=0,qc=0,Db=new Uint8Array(16),eb=new Uint8Array(16),Bc=new THREE.Frustum,xc=new THREE.Matrix4,Dc=new THREE.Matrix4,Oa=new THREE.Vector3,ya=new THREE.Vector3,gc=!0,Ac={ambient:[0,0,0],directional:{length:0,colors:[],positions:[]},point:{length:0,colors:[],positions:[],distances:[]},spot:{length:0,colors:[],positions:[],distances:[],directions:[],anglesCos:[], -exponents:[]},hemi:{length:0,skyColors:[],groundColors:[],positions:[]}},l;try{var Qc={alpha:ba,depth:ga,stencil:za,antialias:O,premultipliedAlpha:Ma,preserveDrawingBuffer:ia};l=ka||Q.getContext("webgl",Qc)||Q.getContext("experimental-webgl",Qc);if(null===l)throw"Error creating WebGL context.";}catch(Vc){console.error(Vc)}void 0===l.getShaderPrecisionFormat&&(l.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}});var sa=new THREE.WebGLExtensions(l);sa.get("OES_texture_float"); -sa.get("OES_texture_float_linear");sa.get("OES_standard_derivatives");Pa&&sa.get("EXT_frag_depth");l.clearColor(0,0,0,1);l.clearDepth(1);l.clearStencil(0);l.enable(l.DEPTH_TEST);l.depthFunc(l.LEQUAL);l.frontFace(l.CCW);l.cullFace(l.BACK);l.enable(l.CULL_FACE);l.enable(l.BLEND);l.blendEquation(l.FUNC_ADD);l.blendFunc(l.SRC_ALPHA,l.ONE_MINUS_SRC_ALPHA);l.viewport(jb,kb,Rb,$b);l.clearColor(Ja.r,Ja.g,Ja.b,db);this.context=l;var Lc=l.getParameter(l.MAX_TEXTURE_IMAGE_UNITS),Wc=l.getParameter(l.MAX_VERTEX_TEXTURE_IMAGE_UNITS), -Xc=l.getParameter(l.MAX_TEXTURE_SIZE),Uc=l.getParameter(l.MAX_CUBE_MAP_TEXTURE_SIZE),fc=0b;b++)l.deleteFramebuffer(a.__webglFramebuffer[b]),l.deleteRenderbuffer(a.__webglRenderbuffer[b]);else l.deleteFramebuffer(a.__webglFramebuffer),l.deleteRenderbuffer(a.__webglRenderbuffer);delete a.__webglFramebuffer;delete a.__webglRenderbuffer}H.info.memory.textures--},zc=function(a){a=a.target;a.removeEventListener("dispose",zc);sc(a)},Sc=function(a){for(var b="__webglVertexBuffer __webglNormalBuffer __webglTangentBuffer __webglColorBuffer __webglUVBuffer __webglUV2Buffer __webglSkinIndicesBuffer __webglSkinWeightsBuffer __webglFaceBuffer __webglLineBuffer __webglLineDistanceBuffer".split(" "), -c=0,d=b.length;cb;b++)l.deleteFramebuffer(a.__webglFramebuffer[b]),l.deleteRenderbuffer(a.__webglRenderbuffer[b]);else l.deleteFramebuffer(a.__webglFramebuffer),l.deleteRenderbuffer(a.__webglRenderbuffer);delete a.__webglFramebuffer;delete a.__webglRenderbuffer}H.info.memory.textures--},Ac=function(a){a=a.target;a.removeEventListener("dispose",Ac);zc(a)},Uc=function(a){for(var b="__webglVertexBuffer __webglNormalBuffer __webglTangentBuffer __webglColorBuffer __webglUVBuffer __webglUV2Buffer __webglSkinIndicesBuffer __webglSkinWeightsBuffer __webglFaceBuffer __webglLineBuffer __webglLineDistanceBuffer".split(" "), +c=0,d=b.length;cf;f++){a.__webglFramebuffer[f]=l.createFramebuffer();a.__webglRenderbuffer[f]=l.createRenderbuffer();l.texImage2D(l.TEXTURE_CUBE_MAP_POSITIVE_X+f,0,d,a.width,a.height,0,d,e,null);var g=a,h=l.TEXTURE_CUBE_MAP_POSITIVE_X+f;l.bindFramebuffer(l.FRAMEBUFFER,a.__webglFramebuffer[f]);l.framebufferTexture2D(l.FRAMEBUFFER, l.COLOR_ATTACHMENT0,h,g.__webglTexture,0);J(a.__webglRenderbuffer[f],a)}c&&l.generateMipmap(l.TEXTURE_CUBE_MAP)}else a.__webglFramebuffer=l.createFramebuffer(),a.__webglRenderbuffer=a.shareDepthFrom?a.shareDepthFrom.__webglRenderbuffer:l.createRenderbuffer(),l.bindTexture(l.TEXTURE_2D,a.__webglTexture),L(l.TEXTURE_2D,a,c),l.texImage2D(l.TEXTURE_2D,0,d,a.width,a.height,0,d,e,null),d=l.TEXTURE_2D,l.bindFramebuffer(l.FRAMEBUFFER,a.__webglFramebuffer),l.framebufferTexture2D(l.FRAMEBUFFER,l.COLOR_ATTACHMENT0, d,a.__webglTexture,0),a.shareDepthFrom?a.depthBuffer&&!a.stencilBuffer?l.framebufferRenderbuffer(l.FRAMEBUFFER,l.DEPTH_ATTACHMENT,l.RENDERBUFFER,a.__webglRenderbuffer):a.depthBuffer&&a.stencilBuffer&&l.framebufferRenderbuffer(l.FRAMEBUFFER,l.DEPTH_STENCIL_ATTACHMENT,l.RENDERBUFFER,a.__webglRenderbuffer):J(a.__webglRenderbuffer,a),c&&l.generateMipmap(l.TEXTURE_2D);b?l.bindTexture(l.TEXTURE_CUBE_MAP,null):l.bindTexture(l.TEXTURE_2D,null);l.bindRenderbuffer(l.RENDERBUFFER,null);l.bindFramebuffer(l.FRAMEBUFFER, -null)}a?(b=b?a.__webglFramebuffer[a.activeCubeFace]:a.__webglFramebuffer,c=a.width,a=a.height,e=d=0):(b=null,c=Rb,a=$b,d=jb,e=kb);b!==Cb&&(l.bindFramebuffer(l.FRAMEBUFFER,b),l.viewport(d,e,c,a),Cb=b);pc=c;qc=a};this.shadowMapPlugin=new THREE.ShadowMapPlugin(this);this.addPrePlugin(this.shadowMapPlugin);this.addPostPlugin(new THREE.SpritePlugin(this));this.addPostPlugin(new THREE.LensFlarePlugin(this))}; +null)}a?(b=b?a.__webglFramebuffer[a.activeCubeFace]:a.__webglFramebuffer,c=a.width,a=a.height,e=d=0):(b=null,c=Xb,a=Yb,d=kb,e=rb);b!==Rc&&(l.bindFramebuffer(l.FRAMEBUFFER,b),l.viewport(d,e,c,a),Rc=b);qc=c;rc=a};this.shadowMapPlugin=new THREE.ShadowMapPlugin(this);this.addPrePlugin(this.shadowMapPlugin);this.addPostPlugin(new THREE.SpritePlugin(this));this.addPostPlugin(new THREE.LensFlarePlugin(this))}; THREE.WebGLRenderTarget=function(a,b,c){this.width=a;this.height=b;c=c||{};this.wrapS=void 0!==c.wrapS?c.wrapS:THREE.ClampToEdgeWrapping;this.wrapT=void 0!==c.wrapT?c.wrapT:THREE.ClampToEdgeWrapping;this.magFilter=void 0!==c.magFilter?c.magFilter:THREE.LinearFilter;this.minFilter=void 0!==c.minFilter?c.minFilter:THREE.LinearMipMapLinearFilter;this.anisotropy=void 0!==c.anisotropy?c.anisotropy:1;this.offset=new THREE.Vector2(0,0);this.repeat=new THREE.Vector2(1,1);this.format=void 0!==c.format?c.format: THREE.RGBAFormat;this.type=void 0!==c.type?c.type:THREE.UnsignedByteType;this.depthBuffer=void 0!==c.depthBuffer?c.depthBuffer:!0;this.stencilBuffer=void 0!==c.stencilBuffer?c.stencilBuffer:!0;this.generateMipmaps=!0;this.shareDepthFrom=null}; THREE.WebGLRenderTarget.prototype={constructor:THREE.WebGLRenderTarget,setSize:function(a,b){this.width=a;this.height=b},clone:function(){var a=new THREE.WebGLRenderTarget(this.width,this.height);a.wrapS=this.wrapS;a.wrapT=this.wrapT;a.magFilter=this.magFilter;a.minFilter=this.minFilter;a.anisotropy=this.anisotropy;a.offset.copy(this.offset);a.repeat.copy(this.repeat);a.format=this.format;a.type=this.type;a.depthBuffer=this.depthBuffer;a.stencilBuffer=this.stencilBuffer;a.generateMipmaps=this.generateMipmaps; @@ -683,18 +683,17 @@ A=p[k][h+1].clone();this.faces.push(new THREE.Face3(r,t,u,[w,y,v]));this.faceVer t,s,[w,y,x])),this.faceVertexUvs[0].push([I,E,z]);if(!1===g&&0=d)return new THREE.Vector2(c,a);d=Math.sqrt(d/2)}else a=!1,1E-10d?-1E-10>f&&(a=!0):Math.sign(e)== -Math.sign(g)&&(a=!0),a?(c=-e,a=d,d=Math.sqrt(h)):(c=d,a=e,d=Math.sqrt(h/2));return new THREE.Vector2(c/d,a/d)}function e(c,d){var e,f;for(O=c.length;0<=--O;){e=O;f=O-1;0>f&&(f=c.length-1);for(var g=0,h=r+2*p,g=0;gMath.abs(b.y-g.y)?[new THREE.Vector2(b.x,1-b.z),new THREE.Vector2(g.x,1-g.z),new THREE.Vector2(f.x, -1-f.z),new THREE.Vector2(a.x,1-a.z)]:[new THREE.Vector2(b.y,1-b.z),new THREE.Vector2(g.y,1-g.z),new THREE.Vector2(f.y,1-f.z),new THREE.Vector2(a.y,1-a.z)]}};THREE.ShapeGeometry=function(a,b){THREE.Geometry.call(this);this.type="ShapeGeometry";!1===a instanceof Array&&(a=[a]);this.addShapeList(a,b);this.computeFaceNormals()};THREE.ShapeGeometry.prototype=Object.create(THREE.Geometry.prototype); -THREE.ShapeGeometry.prototype.addShapeList=function(a,b){for(var c=0,d=a.length;cd&&(d=a.length-1);for(var e=0,f=r+2*p,e=0;eMath.abs(b.y-c.y)?[new THREE.Vector2(b.x,1-b.z),new THREE.Vector2(c.x,1-c.z),new THREE.Vector2(d.x,1-d.z),new THREE.Vector2(e.x,1-e.z)]:[new THREE.Vector2(b.y,1-b.z),new THREE.Vector2(c.y,1-c.z),new THREE.Vector2(d.y, +1-d.z),new THREE.Vector2(e.y,1-e.z)]}};THREE.ShapeGeometry=function(a,b){THREE.Geometry.call(this);this.type="ShapeGeometry";!1===a instanceof Array&&(a=[a]);this.addShapeList(a,b);this.computeFaceNormals()};THREE.ShapeGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.ShapeGeometry.prototype.addShapeList=function(a,b){for(var c=0,d=a.length;c