提交 8ea959eb 编写于 作者: M Mr.doob

Updated builds.

上级 fc279eac
......@@ -21886,6 +21886,7 @@
if ( isAnimating ) return;
( vr.getDevice() || window ).requestAnimationFrame( loop );
isAnimating = true;
}
......@@ -43341,7 +43342,7 @@
set: function ( value ) {
console.warn( 'THREE.' + this.type + ': .shading has been removed. Use the boolean .flatShading instead.' );
this.flatShading = ( value === THREE.FlatShading ) ? true : false;
this.flatShading = ( value === FlatShading );
}
}
......
......@@ -10,23 +10,23 @@ b)}function wf(a){switch(a){case 5126:return mf;case 35664:return of;case 35665:
b){a.uniform3fv(this.addr,Cb(b,this.size,3))}function Bf(a,b){a.uniform4fv(this.addr,Cb(b,this.size,4))}function Cf(a,b){a.uniformMatrix2fv(this.addr,!1,Cb(b,this.size,4))}function Df(a,b){a.uniformMatrix3fv(this.addr,!1,Cb(b,this.size,9))}function Ef(a,b){a.uniformMatrix4fv(this.addr,!1,Cb(b,this.size,16))}function Ff(a,b,c){var d=b.length,e=ze(c,d);a.uniform1iv(this.addr,e);for(a=0;a!==d;++a)c.setTexture2D(b[a]||De,e[a])}function Gf(a,b,c){var d=b.length,e=ze(c,d);a.uniform1iv(this.addr,e);for(a=
0;a!==d;++a)c.setTextureCube(b[a]||Ee,e[a])}function Hf(a){switch(a){case 5126:return xf;case 35664:return zf;case 35665:return Af;case 35666:return Bf;case 35674:return Cf;case 35675:return Df;case 35676:return Ef;case 35678:return Ff;case 35680:return Gf;case 5124:case 35670:return yf;case 35667:case 35671:return Fe;case 35668:case 35672:return Ge;case 35669:case 35673:return He}}function If(a,b,c){this.id=a;this.addr=c;this.setValue=wf(b.type)}function Jf(a,b,c){this.id=a;this.addr=c;this.size=
b.size;this.setValue=Hf(b.type)}function Ie(a){this.id=a;this.seq=[];this.map={}}function cb(a,b,c){this.seq=[];this.map={};this.renderer=c;c=a.getProgramParameter(b,a.ACTIVE_UNIFORMS);for(var d=0;d<c;++d){var e=a.getActiveUniform(b,d),f=a.getUniformLocation(b,e.name),g=this,h=e.name,k=h.length;for(Pd.lastIndex=0;;){var l=Pd.exec(h),q=Pd.lastIndex,p=l[1],t=l[3];"]"===l[2]&&(p|=0);if(void 0===t||"["===t&&q+2===k){h=g;e=void 0===t?new If(p,e,f):new Jf(p,e,f);h.seq.push(e);h.map[e.id]=e;break}else t=
g.map[p],void 0===t&&(t=new Ie(p),p=g,g=t,p.seq.push(g),p.map[g.id]=g),g=t}}}function C(a,b,c){return void 0===b&&void 0===c?this.set(a):this.setRGB(a,b,c)}function id(a,b){this.min=void 0!==a?a:new D(Infinity,Infinity);this.max=void 0!==b?b:new D(-Infinity,-Infinity)}function Kf(a,b,c,d,e){var f,g,h,k,l,q,p,t,r,m,u,x,y,A,I,B;this.render=function(a,v,xa,la){if(0!==a.length){v=new n;var H=la.w/la.z,va=.5*la.z,jd=.5*la.w,J=16/la.w,Fa=new D(J*H,J),ga=new n(1,1,0),M=new D(1,1),T=new id;T.min.set(la.x,
g.map[p],void 0===t&&(t=new Ie(p),p=g,g=t,p.seq.push(g),p.map[g.id]=g),g=t}}}function C(a,b,c){return void 0===b&&void 0===c?this.set(a):this.setRGB(a,b,c)}function id(a,b){this.min=void 0!==a?a:new D(Infinity,Infinity);this.max=void 0!==b?b:new D(-Infinity,-Infinity)}function Kf(a,b,c,d,e){var f,g,h,k,l,q,p,t,r,m,u,x,y,A,I,B;this.render=function(a,v,xa,la){if(0!==a.length){v=new n;var H=la.w/la.z,va=.5*la.z,jd=.5*la.w,J=16/la.w,Ga=new D(J*H,J),ga=new n(1,1,0),M=new D(1,1),T=new id;T.min.set(la.x,
la.y);T.max.set(la.x+(la.z-16),la.y+(la.w-16));if(void 0===A){var J=new Float32Array([-1,-1,0,0,1,-1,1,0,1,1,1,1,-1,1,0,1]),La=new Uint16Array([0,1,2,0,2,3]);u=b.createBuffer();x=b.createBuffer();b.bindBuffer(b.ARRAY_BUFFER,u);b.bufferData(b.ARRAY_BUFFER,J,b.STATIC_DRAW);b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,x);b.bufferData(b.ELEMENT_ARRAY_BUFFER,La,b.STATIC_DRAW);I=b.createTexture();B=b.createTexture();c.bindTexture(b.TEXTURE_2D,I);b.texImage2D(b.TEXTURE_2D,0,b.RGB,16,16,0,b.RGB,b.UNSIGNED_BYTE,null);
b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_S,b.CLAMP_TO_EDGE);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_T,b.CLAMP_TO_EDGE);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MAG_FILTER,b.NEAREST);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MIN_FILTER,b.NEAREST);c.bindTexture(b.TEXTURE_2D,B);b.texImage2D(b.TEXTURE_2D,0,b.RGBA,16,16,0,b.RGBA,b.UNSIGNED_BYTE,null);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_S,b.CLAMP_TO_EDGE);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_T,b.CLAMP_TO_EDGE);b.texParameteri(b.TEXTURE_2D,
b.TEXTURE_MAG_FILTER,b.NEAREST);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MIN_FILTER,b.NEAREST);var J=y={vertexShader:"uniform lowp int renderType;\nuniform vec3 screenPosition;\nuniform vec2 scale;\nuniform float rotation;\nuniform sampler2D occlusionMap;\nattribute vec2 position;\nattribute vec2 uv;\nvarying vec2 vUV;\nvarying float vVisibility;\nvoid main() {\nvUV = uv;\nvec2 pos = position;\nif ( renderType == 2 ) {\nvec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) );\nvVisibility = visibility.r / 9.0;\nvVisibility *= 1.0 - visibility.g / 9.0;\nvVisibility *= visibility.b / 9.0;\nvVisibility *= 1.0 - visibility.a / 9.0;\npos.x = cos( rotation ) * position.x - sin( rotation ) * position.y;\npos.y = sin( rotation ) * position.x + cos( rotation ) * position.y;\n}\ngl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\n}",
fragmentShader:"uniform lowp int renderType;\nuniform sampler2D map;\nuniform float opacity;\nuniform vec3 color;\nvarying vec2 vUV;\nvarying float vVisibility;\nvoid main() {\nif ( renderType == 0 ) {\ngl_FragColor = vec4( 1.0, 0.0, 1.0, 0.0 );\n} else if ( renderType == 1 ) {\ngl_FragColor = texture2D( map, vUV );\n} else {\nvec4 texture = texture2D( map, vUV );\ntexture.a *= opacity * vVisibility;\ngl_FragColor = texture;\ngl_FragColor.rgb *= color;\n}\n}"},La=b.createProgram(),z=b.createShader(b.FRAGMENT_SHADER),
Y=b.createShader(b.VERTEX_SHADER),w="precision "+e.precision+" float;\n";b.shaderSource(z,w+J.fragmentShader);b.shaderSource(Y,w+J.vertexShader);b.compileShader(z);b.compileShader(Y);b.attachShader(La,z);b.attachShader(La,Y);b.linkProgram(La);A=La;r=b.getAttribLocation(A,"position");m=b.getAttribLocation(A,"uv");f=b.getUniformLocation(A,"renderType");g=b.getUniformLocation(A,"map");h=b.getUniformLocation(A,"occlusionMap");k=b.getUniformLocation(A,"opacity");l=b.getUniformLocation(A,"color");q=b.getUniformLocation(A,
"scale");p=b.getUniformLocation(A,"rotation");t=b.getUniformLocation(A,"screenPosition")}c.useProgram(A);c.initAttributes();c.enableAttribute(r);c.enableAttribute(m);c.disableUnusedAttributes();b.uniform1i(h,0);b.uniform1i(g,1);b.bindBuffer(b.ARRAY_BUFFER,u);b.vertexAttribPointer(r,2,b.FLOAT,!1,16,0);b.vertexAttribPointer(m,2,b.FLOAT,!1,16,8);b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,x);c.disable(b.CULL_FACE);c.buffers.depth.setMask(!1);La=0;for(z=a.length;La<z;La++)if(J=16/la.w,Fa.set(J*H,J),Y=a[La],v.set(Y.matrixWorld.elements[12],
Y.matrixWorld.elements[13],Y.matrixWorld.elements[14]),v.applyMatrix4(xa.matrixWorldInverse),v.applyMatrix4(xa.projectionMatrix),ga.copy(v),M.x=la.x+ga.x*va+va-8,M.y=la.y+ga.y*jd+jd-8,!0===T.containsPoint(M)){c.activeTexture(b.TEXTURE0);c.bindTexture(b.TEXTURE_2D,null);c.activeTexture(b.TEXTURE1);c.bindTexture(b.TEXTURE_2D,I);b.copyTexImage2D(b.TEXTURE_2D,0,b.RGB,M.x,M.y,16,16,0);b.uniform1i(f,0);b.uniform2f(q,Fa.x,Fa.y);b.uniform3f(t,ga.x,ga.y,ga.z);c.disable(b.BLEND);c.enable(b.DEPTH_TEST);b.drawElements(b.TRIANGLES,
"scale");p=b.getUniformLocation(A,"rotation");t=b.getUniformLocation(A,"screenPosition")}c.useProgram(A);c.initAttributes();c.enableAttribute(r);c.enableAttribute(m);c.disableUnusedAttributes();b.uniform1i(h,0);b.uniform1i(g,1);b.bindBuffer(b.ARRAY_BUFFER,u);b.vertexAttribPointer(r,2,b.FLOAT,!1,16,0);b.vertexAttribPointer(m,2,b.FLOAT,!1,16,8);b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,x);c.disable(b.CULL_FACE);c.buffers.depth.setMask(!1);La=0;for(z=a.length;La<z;La++)if(J=16/la.w,Ga.set(J*H,J),Y=a[La],v.set(Y.matrixWorld.elements[12],
Y.matrixWorld.elements[13],Y.matrixWorld.elements[14]),v.applyMatrix4(xa.matrixWorldInverse),v.applyMatrix4(xa.projectionMatrix),ga.copy(v),M.x=la.x+ga.x*va+va-8,M.y=la.y+ga.y*jd+jd-8,!0===T.containsPoint(M)){c.activeTexture(b.TEXTURE0);c.bindTexture(b.TEXTURE_2D,null);c.activeTexture(b.TEXTURE1);c.bindTexture(b.TEXTURE_2D,I);b.copyTexImage2D(b.TEXTURE_2D,0,b.RGB,M.x,M.y,16,16,0);b.uniform1i(f,0);b.uniform2f(q,Ga.x,Ga.y);b.uniform3f(t,ga.x,ga.y,ga.z);c.disable(b.BLEND);c.enable(b.DEPTH_TEST);b.drawElements(b.TRIANGLES,
6,b.UNSIGNED_SHORT,0);c.activeTexture(b.TEXTURE0);c.bindTexture(b.TEXTURE_2D,B);b.copyTexImage2D(b.TEXTURE_2D,0,b.RGBA,M.x,M.y,16,16,0);b.uniform1i(f,1);c.disable(b.DEPTH_TEST);c.activeTexture(b.TEXTURE1);c.bindTexture(b.TEXTURE_2D,I);b.drawElements(b.TRIANGLES,6,b.UNSIGNED_SHORT,0);Y.positionScreen.copy(ga);Y.customUpdateCallback?Y.customUpdateCallback(Y):Y.updateLensFlares();b.uniform1i(f,2);c.enable(b.BLEND);for(var w=0,F=Y.lensFlares.length;w<F;w++){var C=Y.lensFlares[w];.001<C.opacity&&.001<
C.scale&&(ga.x=C.x,ga.y=C.y,ga.z=C.z,J=C.size*C.scale/la.w,Fa.x=J*H,Fa.y=J,b.uniform3f(t,ga.x,ga.y,ga.z),b.uniform2f(q,Fa.x,Fa.y),b.uniform1f(p,C.rotation),b.uniform1f(k,C.opacity),b.uniform3f(l,C.color.r,C.color.g,C.color.b),c.setBlending(C.blending,C.blendEquation,C.blendSrc,C.blendDst),d.setTexture2D(C.texture,1),b.drawElements(b.TRIANGLES,6,b.UNSIGNED_SHORT,0))}}c.enable(b.CULL_FACE);c.enable(b.DEPTH_TEST);c.buffers.depth.setMask(!0);c.reset()}}}function oc(a,b,c,d,e,f,g,h,k){N.call(this,a,b,
c,d,e,f,g,h,k);this.needsUpdate=!0}function Lf(a,b,c,d,e){var f,g,h,k,l,q,p,t,r,m,u,x,y,A,I,B,H;function va(a,b){return a.renderOrder!==b.renderOrder?a.renderOrder-b.renderOrder:a.z!==b.z?b.z-a.z:b.id-a.id}var xa,la,ba,Je,jd=new n,J=new ia,Fa=new n;this.render=function(v,n,T){if(0!==v.length){if(void 0===ba){var M=new Float32Array([-.5,-.5,0,0,.5,-.5,1,0,.5,.5,1,1,-.5,.5,0,1]),z=new Uint16Array([0,1,2,0,2,3]);xa=b.createBuffer();la=b.createBuffer();b.bindBuffer(b.ARRAY_BUFFER,xa);b.bufferData(b.ARRAY_BUFFER,
C.scale&&(ga.x=C.x,ga.y=C.y,ga.z=C.z,J=C.size*C.scale/la.w,Ga.x=J*H,Ga.y=J,b.uniform3f(t,ga.x,ga.y,ga.z),b.uniform2f(q,Ga.x,Ga.y),b.uniform1f(p,C.rotation),b.uniform1f(k,C.opacity),b.uniform3f(l,C.color.r,C.color.g,C.color.b),c.setBlending(C.blending,C.blendEquation,C.blendSrc,C.blendDst),d.setTexture2D(C.texture,1),b.drawElements(b.TRIANGLES,6,b.UNSIGNED_SHORT,0))}}c.enable(b.CULL_FACE);c.enable(b.DEPTH_TEST);c.buffers.depth.setMask(!0);c.reset()}}}function oc(a,b,c,d,e,f,g,h,k){N.call(this,a,b,
c,d,e,f,g,h,k);this.needsUpdate=!0}function Lf(a,b,c,d,e){var f,g,h,k,l,q,p,t,r,m,u,x,y,A,I,B,H;function va(a,b){return a.renderOrder!==b.renderOrder?a.renderOrder-b.renderOrder:a.z!==b.z?b.z-a.z:b.id-a.id}var xa,la,ba,Je,jd=new n,J=new ia,Ga=new n;this.render=function(v,n,T){if(0!==v.length){if(void 0===ba){var M=new Float32Array([-.5,-.5,0,0,.5,-.5,1,0,.5,.5,1,1,-.5,.5,0,1]),z=new Uint16Array([0,1,2,0,2,3]);xa=b.createBuffer();la=b.createBuffer();b.bindBuffer(b.ARRAY_BUFFER,xa);b.bufferData(b.ARRAY_BUFFER,
M,b.STATIC_DRAW);b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,la);b.bufferData(b.ELEMENT_ARRAY_BUFFER,z,b.STATIC_DRAW);M=b.createProgram();z=b.createShader(b.VERTEX_SHADER);var w=b.createShader(b.FRAGMENT_SHADER);b.shaderSource(z,["precision "+e.precision+" float;","#define SHADER_NAME SpriteMaterial\nuniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\nuniform float rotation;\nuniform vec2 scale;\nuniform vec2 uvOffset;\nuniform vec2 uvScale;\nattribute vec2 position;\nattribute vec2 uv;\nvarying vec2 vUV;\nvoid main() {\nvUV = uvOffset + uv * uvScale;\nvec2 alignedPosition = position * scale;\nvec2 rotatedPosition;\nrotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\nrotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\nvec4 finalPosition;\nfinalPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\nfinalPosition.xy += rotatedPosition;\nfinalPosition = projectionMatrix * finalPosition;\ngl_Position = finalPosition;\n}"].join("\n"));
b.shaderSource(w,["precision "+e.precision+" float;","#define SHADER_NAME SpriteMaterial\nuniform vec3 color;\nuniform sampler2D map;\nuniform float opacity;\nuniform int fogType;\nuniform vec3 fogColor;\nuniform float fogDensity;\nuniform float fogNear;\nuniform float fogFar;\nuniform float alphaTest;\nvarying vec2 vUV;\nvoid main() {\nvec4 texture = texture2D( map, vUV );\nif ( texture.a < alphaTest ) discard;\ngl_FragColor = vec4( color * texture.xyz, texture.a * opacity );\nif ( fogType > 0 ) {\nfloat depth = gl_FragCoord.z / gl_FragCoord.w;\nfloat fogFactor = 0.0;\nif ( fogType == 1 ) {\nfogFactor = smoothstep( fogNear, fogFar, depth );\n} else {\nconst float LOG2 = 1.442695;\nfogFactor = exp2( - fogDensity * fogDensity * depth * depth * LOG2 );\nfogFactor = 1.0 - clamp( fogFactor, 0.0, 1.0 );\n}\ngl_FragColor = mix( gl_FragColor, vec4( fogColor, gl_FragColor.w ), fogFactor );\n}\n}"].join("\n"));
b.compileShader(z);b.compileShader(w);b.attachShader(M,z);b.attachShader(M,w);b.linkProgram(M);ba=M;B=b.getAttribLocation(ba,"position");H=b.getAttribLocation(ba,"uv");f=b.getUniformLocation(ba,"uvOffset");g=b.getUniformLocation(ba,"uvScale");h=b.getUniformLocation(ba,"rotation");k=b.getUniformLocation(ba,"scale");l=b.getUniformLocation(ba,"color");q=b.getUniformLocation(ba,"map");p=b.getUniformLocation(ba,"opacity");t=b.getUniformLocation(ba,"modelViewMatrix");r=b.getUniformLocation(ba,"projectionMatrix");
m=b.getUniformLocation(ba,"fogType");u=b.getUniformLocation(ba,"fogDensity");x=b.getUniformLocation(ba,"fogNear");y=b.getUniformLocation(ba,"fogFar");A=b.getUniformLocation(ba,"fogColor");I=b.getUniformLocation(ba,"alphaTest");M=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");M.width=8;M.height=8;z=M.getContext("2d");z.fillStyle="white";z.fillRect(0,0,8,8);Je=new oc(M)}c.useProgram(ba);c.initAttributes();c.enableAttribute(B);c.enableAttribute(H);c.disableUnusedAttributes();c.disable(b.CULL_FACE);
c.enable(b.BLEND);b.bindBuffer(b.ARRAY_BUFFER,xa);b.vertexAttribPointer(B,2,b.FLOAT,!1,16,0);b.vertexAttribPointer(H,2,b.FLOAT,!1,16,8);b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,la);b.uniformMatrix4fv(r,!1,T.projectionMatrix.elements);c.activeTexture(b.TEXTURE0);b.uniform1i(q,0);z=M=0;(w=n.fog)?(b.uniform3f(A,w.color.r,w.color.g,w.color.b),w.isFog?(b.uniform1f(x,w.near),b.uniform1f(y,w.far),b.uniform1i(m,1),z=M=1):w.isFogExp2&&(b.uniform1f(u,w.density),b.uniform1i(m,2),z=M=2)):(b.uniform1i(m,0),z=M=0);
for(var D=0,C=v.length;D<C;D++)w=v[D],w.modelViewMatrix.multiplyMatrices(T.matrixWorldInverse,w.matrixWorld),w.z=-w.modelViewMatrix.elements[14];v.sort(va);for(var ga=[],D=0,C=v.length;D<C;D++){w=v[D];var G=w.material;if(!1!==G.visible){w.onBeforeRender(a,n,T,void 0,G,void 0);b.uniform1f(I,G.alphaTest);b.uniformMatrix4fv(t,!1,w.modelViewMatrix.elements);w.matrixWorld.decompose(jd,J,Fa);ga[0]=Fa.x;ga[1]=Fa.y;var F=0;n.fog&&G.fog&&(F=z);M!==F&&(b.uniform1i(m,F),M=F);null!==G.map?(b.uniform2f(f,G.map.offset.x,
for(var D=0,C=v.length;D<C;D++)w=v[D],w.modelViewMatrix.multiplyMatrices(T.matrixWorldInverse,w.matrixWorld),w.z=-w.modelViewMatrix.elements[14];v.sort(va);for(var ga=[],D=0,C=v.length;D<C;D++){w=v[D];var G=w.material;if(!1!==G.visible){w.onBeforeRender(a,n,T,void 0,G,void 0);b.uniform1f(I,G.alphaTest);b.uniformMatrix4fv(t,!1,w.modelViewMatrix.elements);w.matrixWorld.decompose(jd,J,Ga);ga[0]=Ga.x;ga[1]=Ga.y;var F=0;n.fog&&G.fog&&(F=z);M!==F&&(b.uniform1i(m,F),M=F);null!==G.map?(b.uniform2f(f,G.map.offset.x,
G.map.offset.y),b.uniform2f(g,G.map.repeat.x,G.map.repeat.y)):(b.uniform2f(f,0,0),b.uniform2f(g,1,1));b.uniform1f(p,G.opacity);b.uniform3f(l,G.color.r,G.color.g,G.color.b);b.uniform1f(h,G.rotation);b.uniform2fv(k,ga);c.setBlending(G.blending,G.blendEquation,G.blendSrc,G.blendDst,G.blendEquationAlpha,G.blendSrcAlpha,G.blendDstAlpha,G.premultipliedAlpha);c.buffers.depth.setTest(G.depthTest);c.buffers.depth.setMask(G.depthWrite);d.setTexture2D(G.map||Je,0);b.drawElements(b.TRIANGLES,6,b.UNSIGNED_SHORT,
0);w.onAfterRender(a,n,T,void 0,G,void 0)}}c.enable(b.CULL_FACE);c.reset()}}}function P(){Object.defineProperty(this,"id",{value:Mf++});this.uuid=R.generateUUID();this.name="";this.type="Material";this.lights=this.fog=!0;this.blending=1;this.side=0;this.flatShading=!1;this.vertexColors=0;this.opacity=1;this.transparent=!1;this.blendSrc=204;this.blendDst=205;this.blendEquation=100;this.blendEquationAlpha=this.blendDstAlpha=this.blendSrcAlpha=null;this.depthFunc=3;this.depthWrite=this.depthTest=!0;
this.clippingPlanes=null;this.clipShadows=this.clipIntersection=!1;this.colorWrite=!0;this.precision=null;this.polygonOffset=!1;this.polygonOffsetUnits=this.polygonOffsetFactor=0;this.dithering=!1;this.alphaTest=0;this.premultipliedAlpha=!1;this.overdraw=0;this.visible=!0;this.userData={};this.needsUpdate=!0}function ya(a){P.call(this);this.type="ShaderMaterial";this.defines={};this.uniforms={};this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}";
......@@ -154,11 +154,11 @@ da=new kg;fa=new jg(E,ka,Z,da,ea,qa,Xd);pa=new Nf(E);ra=new Yf(E,pa,Xd);ua=new a
Q=!1;b()}function e(a){a=a.target;a.removeEventListener("dispose",e);f(a);da.remove(a)}function f(a){var b=da.get(a).program;a.program=void 0;void 0!==b&&na.releaseProgram(b)}function g(a,b,c){a.render(function(a){J.renderBufferImmediate(a,b,c)})}function h(a){null!==Aa&&Aa(a);(ma.getDevice()||window).requestAnimationFrame(h)}function k(a,b,c){if(a.visible){if(a.layers.test(b.layers))if(a.isLight)w.push(a),a.castShadow&&z.push(a);else if(a.isSprite)a.frustumCulled&&!Vd.intersectsSprite(a)||D.push(a);
else if(a.isLensFlare)C.push(a);else if(a.isImmediateRenderObject)c&&Gb.setFromMatrixPosition(a.matrixWorld).applyMatrix4(ld),ba.push(a,null,a.material,Gb.z,null);else if(a.isMesh||a.isLine||a.isPoints)if(a.isSkinnedMesh&&a.skeleton.update(),!a.frustumCulled||Vd.intersectsObject(a)){c&&Gb.setFromMatrixPosition(a.matrixWorld).applyMatrix4(ld);var d=ua.update(a),e=a.material;if(Array.isArray(e))for(var f=d.groups,g=0,h=f.length;g<h;g++){var l=f[g],p=e[l.materialIndex];p&&p.visible&&ba.push(a,d,p,Gb.z,
l)}else e.visible&&ba.push(a,d,e,Gb.z,null)}a=a.children;g=0;for(h=a.length;g<h;g++)k(a[g],b,c)}}function l(a,b,c,d){for(var e=0,f=a.length;e<f;e++){var g=a[e],h=g.object,l=g.geometry,k=void 0===d?g.material:d,g=g.group;if(c.isArrayCamera){Y=c;for(var p=c.cameras,t=0,r=p.length;t<r;t++){var m=p[t];if(h.layers.test(m.layers)){var v=m.bounds;Z.viewport(V.set(v.x*U,v.y*ca,v.z*U,v.w*ca).multiplyScalar(N));q(h,b,m,l,k,g)}}}else Y=null,q(h,b,c,l,k,g)}}function q(a,b,c,d,e,f){a.onBeforeRender(J,b,c,d,e,
f);a.modelViewMatrix.multiplyMatrices(c.matrixWorldInverse,a.matrixWorld);a.normalMatrix.getNormalMatrix(a.modelViewMatrix);if(a.isImmediateRenderObject){Z.setMaterial(e);var h=t(c,b.fog,e,a);K="";g(a,h,e)}else J.renderBufferDirect(c,b.fog,d,e,a,f);a.onAfterRender(J,b,c,d,e,f)}function p(a,b,c){var d=da.get(a);c=na.getParameters(a,ta.state,z,b,Ga.numPlanes,Ga.numIntersection,c);var g=na.getProgramCode(a,c),h=d.program,l=!0;if(void 0===h)a.addEventListener("dispose",e);else if(h.code!==g)f(a);else{if(void 0!==
f);a.modelViewMatrix.multiplyMatrices(c.matrixWorldInverse,a.matrixWorld);a.normalMatrix.getNormalMatrix(a.modelViewMatrix);if(a.isImmediateRenderObject){Z.setMaterial(e);var h=t(c,b.fog,e,a);K="";g(a,h,e)}else J.renderBufferDirect(c,b.fog,d,e,a,f);a.onAfterRender(J,b,c,d,e,f)}function p(a,b,c){var d=da.get(a);c=na.getParameters(a,ta.state,z,b,Ha.numPlanes,Ha.numIntersection,c);var g=na.getProgramCode(a,c),h=d.program,l=!0;if(void 0===h)a.addEventListener("dispose",e);else if(h.code!==g)f(a);else{if(void 0!==
c.shaderID)return;l=!1}l&&(c.shaderID?(h=ib[c.shaderID],d.shader={name:a.type,uniforms:Da.clone(h.uniforms),vertexShader:h.vertexShader,fragmentShader:h.fragmentShader}):d.shader={name:a.type,uniforms:a.uniforms,vertexShader:a.vertexShader,fragmentShader:a.fragmentShader},a.onBeforeCompile(d.shader),h=na.acquireProgram(a,d.shader,c,g),d.program=h,a.program=h);c=h.getAttributes();if(a.morphTargets)for(g=a.numSupportedMorphTargets=0;g<J.maxMorphTargets;g++)0<=c["morphTarget"+g]&&a.numSupportedMorphTargets++;
if(a.morphNormals)for(g=a.numSupportedMorphNormals=0;g<J.maxMorphNormals;g++)0<=c["morphNormal"+g]&&a.numSupportedMorphNormals++;c=d.shader.uniforms;if(!a.isShaderMaterial&&!a.isRawShaderMaterial||!0===a.clipping)d.numClippingPlanes=Ga.numPlanes,d.numIntersection=Ga.numIntersection,c.clippingPlanes=Ga.uniform;d.fog=b;d.lightsHash=ta.state.hash;a.lights&&(c.ambientLightColor.value=ta.state.ambient,c.directionalLights.value=ta.state.directional,c.spotLights.value=ta.state.spot,c.rectAreaLights.value=
if(a.morphNormals)for(g=a.numSupportedMorphNormals=0;g<J.maxMorphNormals;g++)0<=c["morphNormal"+g]&&a.numSupportedMorphNormals++;c=d.shader.uniforms;if(!a.isShaderMaterial&&!a.isRawShaderMaterial||!0===a.clipping)d.numClippingPlanes=Ha.numPlanes,d.numIntersection=Ha.numIntersection,c.clippingPlanes=Ha.uniform;d.fog=b;d.lightsHash=ta.state.hash;a.lights&&(c.ambientLightColor.value=ta.state.ambient,c.directionalLights.value=ta.state.directional,c.spotLights.value=ta.state.spot,c.rectAreaLights.value=
ta.state.rectArea,c.pointLights.value=ta.state.point,c.hemisphereLights.value=ta.state.hemi,c.directionalShadowMap.value=ta.state.directionalShadowMap,c.directionalShadowMatrix.value=ta.state.directionalShadowMatrix,c.spotShadowMap.value=ta.state.spotShadowMap,c.spotShadowMatrix.value=ta.state.spotShadowMatrix,c.pointShadowMap.value=ta.state.pointShadowMap,c.pointShadowMatrix.value=ta.state.pointShadowMatrix);a=d.program.getUniforms();a=cb.seqWithValue(a.seq,c);d.uniformsList=a}function t(a,b,c,d){G=
0;var e=da.get(c);ja&&(Wd||a!==P)&&Ga.setState(c.clippingPlanes,c.clipIntersection,c.clipShadows,a,e,a===P&&c.id===T);!1===c.needsUpdate&&(void 0===e.program?c.needsUpdate=!0:c.fog&&e.fog!==b?c.needsUpdate=!0:c.lights&&e.lightsHash!==ta.state.hash?c.needsUpdate=!0:void 0===e.numClippingPlanes||e.numClippingPlanes===Ga.numPlanes&&e.numIntersection===Ga.numIntersection||(c.needsUpdate=!0));c.needsUpdate&&(p(c,b,d),c.needsUpdate=!1);var f=!1,g=!1,h=!1,l=e.program,k=l.getUniforms(),q=e.shader.uniforms;
0;var e=da.get(c);ja&&(Wd||a!==P)&&Ha.setState(c.clippingPlanes,c.clipIntersection,c.clipShadows,a,e,a===P&&c.id===T);!1===c.needsUpdate&&(void 0===e.program?c.needsUpdate=!0:c.fog&&e.fog!==b?c.needsUpdate=!0:c.lights&&e.lightsHash!==ta.state.hash?c.needsUpdate=!0:void 0===e.numClippingPlanes||e.numClippingPlanes===Ha.numPlanes&&e.numIntersection===Ha.numIntersection||(c.needsUpdate=!0));c.needsUpdate&&(p(c,b,d),c.needsUpdate=!1);var f=!1,g=!1,h=!1,l=e.program,k=l.getUniforms(),q=e.shader.uniforms;
Z.useProgram(l.program)&&(h=g=f=!0);c.id!==T&&(T=c.id,g=!0);if(f||a!==P){k.setValue(E,"projectionMatrix",a.projectionMatrix);ea.logarithmicDepthBuffer&&k.setValue(E,"logDepthBufFC",2/(Math.log(a.far+1)/Math.LN2));P!==(Y||a)&&(P=Y||a,h=g=!0);if(c.isShaderMaterial||c.isMeshPhongMaterial||c.isMeshStandardMaterial||c.envMap)f=k.map.cameraPosition,void 0!==f&&f.setValue(E,Gb.setFromMatrixPosition(a.matrixWorld));(c.isMeshPhongMaterial||c.isMeshLambertMaterial||c.isMeshBasicMaterial||c.isMeshStandardMaterial||
c.isShaderMaterial||c.skinning)&&k.setValue(E,"viewMatrix",a.matrixWorldInverse)}if(c.skinning&&(k.setOptional(E,d,"bindMatrix"),k.setOptional(E,d,"bindMatrixInverse"),a=d.skeleton))if(f=a.bones,ea.floatVertexTextures){if(void 0===a.boneTexture){var f=Math.sqrt(4*f.length),f=R.nextPowerOfTwo(Math.ceil(f)),f=Math.max(f,4),t=new Float32Array(f*f*4);t.set(a.boneMatrices);var v=new bb(t,f,f,1023,1015);a.boneMatrices=t;a.boneTexture=v;a.boneTextureSize=f}k.setValue(E,"boneTexture",a.boneTexture);k.setValue(E,
"boneTextureSize",a.boneTextureSize)}else k.setOptional(E,a,"boneMatrices");g&&(k.setValue(E,"toneMappingExposure",J.toneMappingExposure),k.setValue(E,"toneMappingWhitePoint",J.toneMappingWhitePoint),c.lights&&(g=h,q.ambientLightColor.needsUpdate=g,q.directionalLights.needsUpdate=g,q.pointLights.needsUpdate=g,q.spotLights.needsUpdate=g,q.rectAreaLights.needsUpdate=g,q.hemisphereLights.needsUpdate=g),b&&c.fog&&(q.fogColor.value=b.color,b.isFog?(q.fogNear.value=b.near,q.fogFar.value=b.far):b.isFogExp2&&
......@@ -171,7 +171,7 @@ k.setValue(E,"modelMatrix",d.matrixWorld);return l}function r(a,b){a.opacity.val
b.lightMap&&(a.lightMap.value=b.lightMap,a.lightMapIntensity.value=b.lightMapIntensity);b.aoMap&&(a.aoMap.value=b.aoMap,a.aoMapIntensity.value=b.aoMapIntensity);if(b.map)var c=b.map;else b.specularMap?c=b.specularMap:b.displacementMap?c=b.displacementMap:b.normalMap?c=b.normalMap:b.bumpMap?c=b.bumpMap:b.roughnessMap?c=b.roughnessMap:b.metalnessMap?c=b.metalnessMap:b.alphaMap?c=b.alphaMap:b.emissiveMap&&(c=b.emissiveMap);void 0!==c&&(c.isWebGLRenderTarget&&(c=c.texture),b=c.offset,c=c.repeat,a.offsetRepeat.value.set(b.x,
b.y,c.x,c.y))}function m(a,b){a.specular.value=b.specular;a.shininess.value=Math.max(b.shininess,1E-4);b.emissiveMap&&(a.emissiveMap.value=b.emissiveMap);b.bumpMap&&(a.bumpMap.value=b.bumpMap,a.bumpScale.value=b.bumpScale);b.normalMap&&(a.normalMap.value=b.normalMap,a.normalScale.value.copy(b.normalScale));b.displacementMap&&(a.displacementMap.value=b.displacementMap,a.displacementScale.value=b.displacementScale,a.displacementBias.value=b.displacementBias)}console.log("THREE.WebGLRenderer","87");
a=a||{};var u=void 0!==a.canvas?a.canvas:document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),x=void 0!==a.context?a.context:null,y=void 0!==a.alpha?a.alpha:!1,A=void 0!==a.depth?a.depth:!0,I=void 0!==a.stencil?a.stencil:!0,B=void 0!==a.antialias?a.antialias:!1,H=void 0!==a.premultipliedAlpha?a.premultipliedAlpha:!0,va=void 0!==a.preserveDrawingBuffer?a.preserveDrawingBuffer:!1,w=[],z=[],ba=null,D=[],C=[];this.domElement=u;this.context=null;this.sortObjects=this.autoClearStencil=this.autoClearDepth=
this.autoClearColor=this.autoClear=!0;this.clippingPlanes=[];this.localClippingEnabled=!1;this.gammaFactor=2;this.physicallyCorrectLights=this.gammaOutput=this.gammaInput=!1;this.toneMappingWhitePoint=this.toneMappingExposure=this.toneMapping=1;this.maxMorphTargets=8;this.maxMorphNormals=4;var J=this,Q=!1,ga=null,M=null,T=-1,K="",P=null,Y=null,V=new S,W=new S,X=null,G=0,U=u.width,ca=u.height,N=1,aa=new S(0,0,U,ca),ia=new S(0,0,U,ca),ha=!1,Vd=new kd,Ga=new pg,ja=!1,Wd=!1,ld=new O,Gb=new n,Xd={geometries:0,
this.autoClearColor=this.autoClear=!0;this.clippingPlanes=[];this.localClippingEnabled=!1;this.gammaFactor=2;this.physicallyCorrectLights=this.gammaOutput=this.gammaInput=!1;this.toneMappingWhitePoint=this.toneMappingExposure=this.toneMapping=1;this.maxMorphTargets=8;this.maxMorphNormals=4;var J=this,Q=!1,ga=null,M=null,T=-1,K="",P=null,Y=null,V=new S,W=new S,X=null,G=0,U=u.width,ca=u.height,N=1,aa=new S(0,0,U,ca),ia=new S(0,0,U,ca),ha=!1,Vd=new kd,Ha=new pg,ja=!1,Wd=!1,ld=new O,Gb=new n,Xd={geometries:0,
textures:0},Sa={frame:0,calls:0,vertices:0,faces:0,points:0};this.info={render:Sa,memory:Xd,programs:null};try{y={alpha:y,depth:A,stencil:I,antialias:B,premultipliedAlpha:H,preserveDrawingBuffer:va};var E=x||u.getContext("webgl",y)||u.getContext("experimental-webgl",y);if(null===E){if(null!==u.getContext("webgl"))throw"Error creating WebGL context with your selected attributes.";throw"Error creating WebGL context.";}void 0===E.getShaderPrecisionFormat&&(E.getShaderPrecisionFormat=function(){return{rangeMin:1,
rangeMax:1,precision:1}});u.addEventListener("webglcontextlost",c,!1);u.addEventListener("webglcontextrestored",d,!1)}catch(qg){console.error("THREE.WebGLRenderer: "+qg)}var ka,ea,Z,da,fa,pa,ra,ua,ta,na,sa,oa,wa,ya,za,Ba,Ca,qa;b();var ma=new ng(J);this.vr=ma;var Ea=new Ke(J,ua,ea.maxTextureSize);this.shadowMap=Ea;this.getContext=function(){return E};this.getContextAttributes=function(){return E.getContextAttributes()};this.forceContextLoss=function(){var a=ka.get("WEBGL_lose_context");a&&a.loseContext()};
this.forceContextRestore=function(){var a=ka.get("WEBGL_lose_context");a&&a.restoreContext()};this.getPixelRatio=function(){return N};this.setPixelRatio=function(a){void 0!==a&&(N=a,this.setSize(U,ca,!1))};this.getSize=function(){return{width:U,height:ca}};this.setSize=function(a,b,c){var d=ma.getDevice();d&&d.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(U=a,ca=b,u.width=a*N,u.height=b*N,!1!==c&&(u.style.width=a+"px",u.style.height=b+"px"),this.setViewport(0,
......@@ -185,9 +185,9 @@ else{void 0===h&&(h=0);Z.initAttributes();var p=c.attributes,g=g.getAttributes()
Z.enableAttribute(m);E.bindBuffer(E.ARRAY_BUFFER,A);E.vertexAttribPointer(m,x,B,n,I*u,(h*I+v)*u)}else v.isInstancedBufferAttribute?(Z.enableAttributeAndDivisor(m,v.meshPerAttribute),void 0===c.maxInstancedCount&&(c.maxInstancedCount=v.meshPerAttribute*v.count)):Z.enableAttribute(m),E.bindBuffer(E.ARRAY_BUFFER,A),E.vertexAttribPointer(m,x,B,n,0,h*x*u)}}else if(void 0!==r&&(n=r[H],void 0!==n))switch(n.length){case 2:E.vertexAttrib2fv(m,n);break;case 3:E.vertexAttrib3fv(m,n);break;case 4:E.vertexAttrib4fv(m,
n);break;default:E.vertexAttrib1fv(m,n)}}}Z.disableUnusedAttributes()}null!==l&&E.bindBuffer(E.ELEMENT_ARRAY_BUFFER,q.buffer)}q=0;null!==l?q=l.count:void 0!==k&&(q=k.count);l=c.drawRange.start*b;k=null!==f?f.start*b:0;var H=Math.max(l,k);f=Math.max(0,Math.min(q,l+c.drawRange.count*b,k+(null!==f?f.count*b:Infinity))-1-H+1);if(0!==f){if(e.isMesh)if(!0===d.wireframe)Z.setLineWidth(d.wireframeLinewidth*(null===ga?N:1)),a.setMode(E.LINES);else switch(e.drawMode){case 0:a.setMode(E.TRIANGLES);break;case 1:a.setMode(E.TRIANGLE_STRIP);
break;case 2:a.setMode(E.TRIANGLE_FAN)}else e.isLine?(d=d.linewidth,void 0===d&&(d=1),Z.setLineWidth(d*(null===ga?N:1)),e.isLineSegments?a.setMode(E.LINES):e.isLineLoop?a.setMode(E.LINE_LOOP):a.setMode(E.LINE_STRIP)):e.isPoints&&a.setMode(E.POINTS);c&&c.isInstancedBufferGeometry?0<c.maxInstancedCount&&a.renderInstances(c,H,f):a.render(H,f)}};this.compile=function(a,b){w.length=0;z.length=0;a.traverse(function(a){a.isLight&&(w.push(a),a.castShadow&&z.push(a))});ta.setup(w,z,b);a.traverse(function(b){if(b.material)if(Array.isArray(b.material))for(var c=
0;c<b.material.length;c++)p(b.material[c],a.fog,b);else p(b.material,a.fog,b)})};var Aa=null;this.animate=function(a){Aa=a;(ma.getDevice()||window).requestAnimationFrame(h)};this.render=function(a,b,c,d){if(!b||!b.isCamera)console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");else if(!Q){K="";T=-1;P=null;!0===a.autoUpdate&&a.updateMatrixWorld();null===b.parent&&b.updateMatrixWorld();ma.enabled&&(b=ma.getCamera(b));ld.multiplyMatrices(b.projectionMatrix,b.matrixWorldInverse);
Vd.setFromMatrix(ld);w.length=0;z.length=0;D.length=0;C.length=0;Wd=this.localClippingEnabled;ja=Ga.init(this.clippingPlanes,Wd,b);ba=sa.get(a,b);ba.init();k(a,b,J.sortObjects);!0===J.sortObjects&&ba.sort();ja&&Ga.beginShadows();Ea.render(z,a,b);ta.setup(w,z,b);ja&&Ga.endShadows();Sa.frame++;Sa.calls=0;Sa.vertices=0;Sa.faces=0;Sa.points=0;void 0===c&&(c=null);this.setRenderTarget(c);oa.render(ba,a,b,d);d=ba.opaque;var e=ba.transparent;if(a.overrideMaterial){var f=a.overrideMaterial;d.length&&l(d,
a,b,f);e.length&&l(e,a,b,f)}else d.length&&l(d,a,b),e.length&&l(e,a,b);Ca.render(D,a,b);Ba.render(C,a,b,V);c&&fa.updateRenderTargetMipmap(c);Z.buffers.depth.setTest(!0);Z.buffers.depth.setMask(!0);Z.buffers.color.setMask(!0);Z.setPolygonOffset(!1);ma.enabled&&ma.submitFrame()}};this.setFaceCulling=function(a,b){Z.setCullFace(a);Z.setFlipSided(0===b)};this.allocTextureUnit=function(){var a=G;a>=ea.maxTextures&&console.warn("THREE.WebGLRenderer: Trying to use "+a+" texture units while this GPU supports only "+
0;c<b.material.length;c++)p(b.material[c],a.fog,b);else p(b.material,a.fog,b)})};var Fa=!1,Aa=null;this.animate=function(a){Aa=a;Fa||((ma.getDevice()||window).requestAnimationFrame(h),Fa=!0)};this.render=function(a,b,c,d){if(!b||!b.isCamera)console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");else if(!Q){K="";T=-1;P=null;!0===a.autoUpdate&&a.updateMatrixWorld();null===b.parent&&b.updateMatrixWorld();ma.enabled&&(b=ma.getCamera(b));ld.multiplyMatrices(b.projectionMatrix,
b.matrixWorldInverse);Vd.setFromMatrix(ld);w.length=0;z.length=0;D.length=0;C.length=0;Wd=this.localClippingEnabled;ja=Ha.init(this.clippingPlanes,Wd,b);ba=sa.get(a,b);ba.init();k(a,b,J.sortObjects);!0===J.sortObjects&&ba.sort();ja&&Ha.beginShadows();Ea.render(z,a,b);ta.setup(w,z,b);ja&&Ha.endShadows();Sa.frame++;Sa.calls=0;Sa.vertices=0;Sa.faces=0;Sa.points=0;void 0===c&&(c=null);this.setRenderTarget(c);oa.render(ba,a,b,d);d=ba.opaque;var e=ba.transparent;if(a.overrideMaterial){var f=a.overrideMaterial;
d.length&&l(d,a,b,f);e.length&&l(e,a,b,f)}else d.length&&l(d,a,b),e.length&&l(e,a,b);Ca.render(D,a,b);Ba.render(C,a,b,V);c&&fa.updateRenderTargetMipmap(c);Z.buffers.depth.setTest(!0);Z.buffers.depth.setMask(!0);Z.buffers.color.setMask(!0);Z.setPolygonOffset(!1);ma.enabled&&ma.submitFrame()}};this.setFaceCulling=function(a,b){Z.setCullFace(a);Z.setFlipSided(0===b)};this.allocTextureUnit=function(){var a=G;a>=ea.maxTextures&&console.warn("THREE.WebGLRenderer: Trying to use "+a+" texture units while this GPU supports only "+
ea.maxTextures);G+=1;return a};this.setTexture2D=function(){var a=!1;return function(b,c){b&&b.isWebGLRenderTarget&&(a||(console.warn("THREE.WebGLRenderer.setTexture2D: don't use render targets as textures. Use their .texture property instead."),a=!0),b=b.texture);fa.setTexture2D(b,c)}}();this.setTexture=function(){var a=!1;return function(b,c){a||(console.warn("THREE.WebGLRenderer: .setTexture is deprecated, use setTexture2D instead."),a=!0);fa.setTexture2D(b,c)}}();this.setTextureCube=function(){var a=
!1;return function(b,c){b&&b.isWebGLRenderTargetCube&&(a||(console.warn("THREE.WebGLRenderer.setTextureCube: don't use cube render targets as textures. Use their .texture property instead."),a=!0),b=b.texture);b&&b.isCubeTexture||Array.isArray(b.image)&&6===b.image.length?fa.setTextureCube(b,c):fa.setTextureCubeDynamic(b,c)}}();this.getRenderTarget=function(){return ga};this.setRenderTarget=function(a){(ga=a)&&void 0===da.get(a).__webglFramebuffer&&fa.setupRenderTarget(a);var b=null,c=!1;a?(b=da.get(a).__webglFramebuffer,
a.isWebGLRenderTargetCube&&(b=b[a.activeCubeFace],c=!0),V.copy(a.viewport),W.copy(a.scissor),X=a.scissorTest):(V.copy(aa).multiplyScalar(N),W.copy(ia).multiplyScalar(N),X=ha);M!==b&&(E.bindFramebuffer(E.FRAMEBUFFER,b),M=b);Z.viewport(V);Z.scissor(W);Z.setScissorTest(X);c&&(c=da.get(a.texture),E.framebufferTexture2D(E.FRAMEBUFFER,E.COLOR_ATTACHMENT0,E.TEXTURE_CUBE_MAP_POSITIVE_X+a.activeCubeFace,c.__webglTexture,a.activeMipMapLevel))};this.readRenderTargetPixels=function(a,b,c,d,e,f){if(a&&a.isWebGLRenderTarget){var g=
......@@ -227,7 +227,7 @@ outerRadius:b,thetaSegments:c,phiSegments:d,thetaStart:e,thetaLength:f};a=a||20;
f,q);this.setIndex(g);this.addAttribute("position",new z(h,3));this.addAttribute("normal",new z(k,3));this.addAttribute("uv",new z(l,2))}function Oc(a,b,c,d){Q.call(this);this.type="LatheGeometry";this.parameters={points:a,segments:b,phiStart:c,phiLength:d};this.fromBufferGeometry(new Vb(a,b,c,d));this.mergeVertices()}function Vb(a,b,c,d){F.call(this);this.type="LatheBufferGeometry";this.parameters={points:a,segments:b,phiStart:c,phiLength:d};b=Math.floor(b)||12;c=c||0;d=d||2*Math.PI;d=R.clamp(d,
0,2*Math.PI);var e=[],f=[],g=[],h=1/b,k=new n,l=new D,q;for(q=0;q<=b;q++){var p=c+q*h*d;var t=Math.sin(p),m=Math.cos(p);for(p=0;p<=a.length-1;p++)k.x=a[p].x*t,k.y=a[p].y,k.z=a[p].x*m,f.push(k.x,k.y,k.z),l.x=q/b,l.y=p/(a.length-1),g.push(l.x,l.y)}for(q=0;q<b;q++)for(p=0;p<a.length-1;p++)c=p+q*a.length,h=c+a.length,k=c+a.length+1,l=c+1,e.push(c,h,l),e.push(h,k,l);this.setIndex(e);this.addAttribute("position",new z(f,3));this.addAttribute("uv",new z(g,2));this.computeVertexNormals();if(d===2*Math.PI)for(d=
this.attributes.normal.array,e=new n,f=new n,g=new n,c=b*a.length*3,p=q=0;q<a.length;q++,p+=3)e.x=d[p+0],e.y=d[p+1],e.z=d[p+2],f.x=d[c+p+0],f.y=d[c+p+1],f.z=d[c+p+2],g.addVectors(e,f).normalize(),d[p+0]=d[c+p+0]=g.x,d[p+1]=d[c+p+1]=g.y,d[p+2]=d[c+p+2]=g.z}function Wb(a,b){Q.call(this);this.type="ShapeGeometry";"object"===typeof b&&(console.warn("THREE.ShapeGeometry: Options parameter has been removed."),b=b.curveSegments);this.parameters={shapes:a,curveSegments:b};this.fromBufferGeometry(new Xb(a,
b));this.mergeVertices()}function Xb(a,b){function c(a){var c,h=e.length/3;a=a.extractPoints(b);var l=a.shape,q=a.holes;if(!1===Aa.isClockWise(l))for(l=l.reverse(),a=0,c=q.length;a<c;a++){var m=q[a];!0===Aa.isClockWise(m)&&(q[a]=m.reverse())}var n=Aa.triangulateShape(l,q);a=0;for(c=q.length;a<c;a++)m=q[a],l=l.concat(m);a=0;for(c=l.length;a<c;a++)m=l[a],e.push(m.x,m.y,0),f.push(0,0,1),g.push(m.x,m.y);a=0;for(c=n.length;a<c;a++)l=n[a],d.push(l[0]+h,l[1]+h,l[2]+h),k+=3}F.call(this);this.type="ShapeBufferGeometry";
b));this.mergeVertices()}function Xb(a,b){function c(a){var c,h=e.length/3;a=a.extractPoints(b);var l=a.shape,q=a.holes;if(!1===Fa.isClockWise(l))for(l=l.reverse(),a=0,c=q.length;a<c;a++){var m=q[a];!0===Fa.isClockWise(m)&&(q[a]=m.reverse())}var n=Fa.triangulateShape(l,q);a=0;for(c=q.length;a<c;a++)m=q[a],l=l.concat(m);a=0;for(c=l.length;a<c;a++)m=l[a],e.push(m.x,m.y,0),f.push(0,0,1),g.push(m.x,m.y);a=0;for(c=n.length;a<c;a++)l=n[a],d.push(l[0]+h,l[1]+h,l[2]+h),k+=3}F.call(this);this.type="ShapeBufferGeometry";
this.parameters={shapes:a,curveSegments:b};b=b||12;var d=[],e=[],f=[],g=[],h=0,k=0;if(!1===Array.isArray(a))c(a);else for(var l=0;l<a.length;l++)c(a[l]),this.addGroup(h,k,l),h+=k,k=0;this.setIndex(d);this.addAttribute("position",new z(e,3));this.addAttribute("normal",new z(f,3));this.addAttribute("uv",new z(g,2))}function Yb(a,b){F.call(this);this.type="EdgesGeometry";this.parameters={thresholdAngle:b};var c=[];b=Math.cos(R.DEG2RAD*(void 0!==b?b:1));var d=[0,0],e={},f=["a","b","c"];if(a.isBufferGeometry){var g=
new Q;g.fromBufferGeometry(a)}else g=a.clone();g.mergeVertices();g.computeFaceNormals();a=g.vertices;g=g.faces;for(var h=0,k=g.length;h<k;h++)for(var l=g[h],q=0;3>q;q++){var p=l[f[q]];var t=l[f[(q+1)%3]];d[0]=Math.min(p,t);d[1]=Math.max(p,t);p=d[0]+","+d[1];void 0===e[p]?e[p]={index1:d[0],index2:d[1],face1:h,face2:void 0}:e[p].face2=h}for(p in e)if(d=e[p],void 0===d.face2||g[d.face1].normal.dot(g[d.face2].normal)<=b)f=a[d.index1],c.push(f.x,f.y,f.z),f=a[d.index2],c.push(f.x,f.y,f.z);this.addAttribute("position",
new z(c,3))}function lb(a,b,c,d,e,f,g,h){Q.call(this);this.type="CylinderGeometry";this.parameters={radiusTop:a,radiusBottom:b,height:c,radialSegments:d,heightSegments:e,openEnded:f,thetaStart:g,thetaLength:h};this.fromBufferGeometry(new Ta(a,b,c,d,e,f,g,h));this.mergeVertices()}function Ta(a,b,c,d,e,f,g,h){function k(c){var e,f=new D,k=new n,r=0,u=!0===c?a:b,A=!0===c?1:-1;var w=v;for(e=1;e<=d;e++)p.push(0,x*A,0),t.push(0,A,0),m.push(.5,.5),v++;var z=v;for(e=0;e<=d;e++){var C=e/d*h+g,J=Math.cos(C),
......@@ -237,9 +237,9 @@ w,0);y+=w})();!1===f&&(0<a&&k(!0),0<b&&k(!1));this.setIndex(q);this.addAttribute
heightSegments:d,openEnded:e,thetaStart:f,thetaLength:g}}function Rc(a,b,c,d){Q.call(this);this.type="CircleGeometry";this.parameters={radius:a,segments:b,thetaStart:c,thetaLength:d};this.fromBufferGeometry(new Zb(a,b,c,d));this.mergeVertices()}function Zb(a,b,c,d){F.call(this);this.type="CircleBufferGeometry";this.parameters={radius:a,segments:b,thetaStart:c,thetaLength:d};a=a||50;b=void 0!==b?Math.max(3,b):8;c=void 0!==c?c:0;d=void 0!==d?d:2*Math.PI;var e=[],f=[],g=[],h=[],k,l=new n,q=new D;f.push(0,
0,0);g.push(0,0,1);h.push(.5,.5);var p=0;for(k=3;p<=b;p++,k+=3){var t=c+p/b*d;l.x=a*Math.cos(t);l.y=a*Math.sin(t);f.push(l.x,l.y,l.z);g.push(0,0,1);q.x=(f[k]/a+1)/2;q.y=(f[k+1]/a+1)/2;h.push(q.x,q.y)}for(k=1;k<=b;k++)e.push(k,k+1,0);this.setIndex(e);this.addAttribute("position",new z(f,3));this.addAttribute("normal",new z(g,3));this.addAttribute("uv",new z(h,2))}function $b(a){P.call(this);this.type="ShadowMaterial";this.color=new C(0);this.opacity=1;this.transparent=this.lights=!0;this.setValues(a)}
function ac(a){ya.call(this,a);this.type="RawShaderMaterial"}function Na(a){P.call(this);this.defines={STANDARD:""};this.type="MeshStandardMaterial";this.color=new C(16777215);this.metalness=this.roughness=.5;this.lightMap=this.map=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new C(0);this.emissiveIntensity=1;this.bumpMap=this.emissiveMap=null;this.bumpScale=1;this.normalMap=null;this.normalScale=new D(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=
0;this.envMap=this.alphaMap=this.metalnessMap=this.roughnessMap=null;this.envMapIntensity=1;this.refractionRatio=.98;this.wireframe=!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)}function mb(a){Na.call(this);this.defines={PHYSICAL:""};this.type="MeshPhysicalMaterial";this.reflectivity=.5;this.clearCoatRoughness=this.clearCoat=0;this.setValues(a)}function Ha(a){P.call(this);this.type="MeshPhongMaterial";
0;this.envMap=this.alphaMap=this.metalnessMap=this.roughnessMap=null;this.envMapIntensity=1;this.refractionRatio=.98;this.wireframe=!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)}function mb(a){Na.call(this);this.defines={PHYSICAL:""};this.type="MeshPhysicalMaterial";this.reflectivity=.5;this.clearCoatRoughness=this.clearCoat=0;this.setValues(a)}function Aa(a){P.call(this);this.type="MeshPhongMaterial";
this.color=new C(16777215);this.specular=new C(1118481);this.shininess=30;this.lightMap=this.map=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new C(0);this.emissiveIntensity=1;this.bumpMap=this.emissiveMap=null;this.bumpScale=1;this.normalMap=null;this.normalScale=new D(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.envMap=this.alphaMap=this.specularMap=null;this.combine=0;this.reflectivity=1;this.refractionRatio=.98;this.wireframe=
!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)}function nb(a){Ha.call(this);this.defines={TOON:""};this.type="MeshToonMaterial";this.gradientMap=null;this.setValues(a)}function ob(a){P.call(this);this.type="MeshNormalMaterial";this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalScale=new D(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=
!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)}function nb(a){Aa.call(this);this.defines={TOON:""};this.type="MeshToonMaterial";this.gradientMap=null;this.setValues(a)}function ob(a){P.call(this);this.type="MeshNormalMaterial";this.bumpMap=null;this.bumpScale=1;this.normalMap=null;this.normalScale=new D(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=
!1;this.wireframeLinewidth=1;this.morphNormals=this.morphTargets=this.skinning=this.lights=this.fog=!1;this.setValues(a)}function pb(a){P.call(this);this.type="MeshLambertMaterial";this.color=new C(16777215);this.lightMap=this.map=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.emissive=new C(0);this.emissiveIntensity=1;this.envMap=this.alphaMap=this.specularMap=this.emissiveMap=null;this.combine=0;this.reflectivity=1;this.refractionRatio=.98;this.wireframe=!1;this.wireframeLinewidth=
1;this.wireframeLinejoin=this.wireframeLinecap="round";this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)}function qb(a){W.call(this);this.type="LineDashedMaterial";this.scale=1;this.dashSize=3;this.gapSize=1;this.setValues(a)}function $d(a,b,c){var d=this,e=!1,f=0,g=0;this.onStart=void 0;this.onLoad=a;this.onProgress=b;this.onError=c;this.itemStart=function(a){g++;if(!1===e&&void 0!==d.onStart)d.onStart(a,f,g);e=!0};this.itemEnd=function(a){f++;if(void 0!==d.onProgress)d.onProgress(a,
f,g);if(f===g&&(e=!1,void 0!==d.onLoad))d.onLoad()};this.itemError=function(a){if(void 0!==d.onError)d.onError(a)}}function Ia(a){this.manager=void 0!==a?a:oa}function Re(a){this.manager=void 0!==a?a:oa;this._parser=null}function ae(a){this.manager=void 0!==a?a:oa;this._parser=null}function Sc(a){this.manager=void 0!==a?a:oa}function be(a){this.manager=void 0!==a?a:oa}function sd(a){this.manager=void 0!==a?a:oa}function aa(a,b){w.call(this);this.type="Light";this.color=new C(a);this.intensity=void 0!==
......@@ -601,20 +601,20 @@ b.copy(d.ray).applyMatrix4(a);var l=l/((this.scale.x+this.scale.y+this.scale.z)/
{constructor:Ac});rd.prototype=Object.create(N.prototype);rd.prototype.constructor=rd;Kb.prototype=Object.create(N.prototype);Kb.prototype.constructor=Kb;Kb.prototype.isCompressedTexture=!0;Bc.prototype=Object.create(N.prototype);Bc.prototype.constructor=Bc;Bc.prototype.isDepthTexture=!0;Lb.prototype=Object.create(F.prototype);Lb.prototype.constructor=Lb;Cc.prototype=Object.create(Q.prototype);Cc.prototype.constructor=Cc;Mb.prototype=Object.create(F.prototype);Mb.prototype.constructor=Mb;Dc.prototype=
Object.create(Q.prototype);Dc.prototype.constructor=Dc;ua.prototype=Object.create(F.prototype);ua.prototype.constructor=ua;Ec.prototype=Object.create(Q.prototype);Ec.prototype.constructor=Ec;Nb.prototype=Object.create(ua.prototype);Nb.prototype.constructor=Nb;Fc.prototype=Object.create(Q.prototype);Fc.prototype.constructor=Fc;jb.prototype=Object.create(ua.prototype);jb.prototype.constructor=jb;Gc.prototype=Object.create(Q.prototype);Gc.prototype.constructor=Gc;Ob.prototype=Object.create(ua.prototype);
Ob.prototype.constructor=Ob;Hc.prototype=Object.create(Q.prototype);Hc.prototype.constructor=Hc;Pb.prototype=Object.create(ua.prototype);Pb.prototype.constructor=Pb;Ic.prototype=Object.create(Q.prototype);Ic.prototype.constructor=Ic;Qb.prototype=Object.create(F.prototype);Qb.prototype.constructor=Qb;Jc.prototype=Object.create(Q.prototype);Jc.prototype.constructor=Jc;Rb.prototype=Object.create(F.prototype);Rb.prototype.constructor=Rb;Kc.prototype=Object.create(Q.prototype);Kc.prototype.constructor=
Kc;Sb.prototype=Object.create(F.prototype);Sb.prototype.constructor=Sb;var Aa={area:function(a){for(var b=a.length,c=0,d=b-1,e=0;e<b;d=e++)c+=a[d].x*a[e].y-a[e].x*a[d].y;return.5*c},triangulate:function(){return function(a,b){var c=a.length;if(3>c)return null;var d=[],e=[],f=[],g;if(0<Aa.area(a))for(g=0;g<c;g++)e[g]=g;else for(g=0;g<c;g++)e[g]=c-1-g;var h=2*c;for(g=c-1;2<c;){if(0>=h--){console.warn("THREE.ShapeUtils: Unable to triangulate polygon! in triangulate()");break}var k=g;c<=k&&(k=0);g=k+
Kc;Sb.prototype=Object.create(F.prototype);Sb.prototype.constructor=Sb;var Fa={area:function(a){for(var b=a.length,c=0,d=b-1,e=0;e<b;d=e++)c+=a[d].x*a[e].y-a[e].x*a[d].y;return.5*c},triangulate:function(){return function(a,b){var c=a.length;if(3>c)return null;var d=[],e=[],f=[],g;if(0<Fa.area(a))for(g=0;g<c;g++)e[g]=g;else for(g=0;g<c;g++)e[g]=c-1-g;var h=2*c;for(g=c-1;2<c;){if(0>=h--){console.warn("THREE.ShapeUtils: Unable to triangulate polygon! in triangulate()");break}var k=g;c<=k&&(k=0);g=k+
1;c<=g&&(g=0);var l=g+1;c<=l&&(l=0);a:{var m;var p=a[e[k]].x;var t=a[e[k]].y;var n=a[e[g]].x;var v=a[e[g]].y;var u=a[e[l]].x;var x=a[e[l]].y;if(0>=(n-p)*(x-t)-(v-t)*(u-p))var y=!1;else{var A=u-n;var w=x-v;var B=p-u;var z=t-x;var D=n-p;y=v-t;for(m=0;m<c;m++){var C=a[e[m]].x;var F=a[e[m]].y;if(!(C===p&&F===t||C===n&&F===v||C===u&&F===x)){var K=C-p;var L=F-t;var O=C-n;var J=F-v;C-=u;F-=x;J=A*J-w*O;L=D*L-y*K;C=B*F-z*C;if(J>=-Number.EPSILON&&C>=-Number.EPSILON&&L>=-Number.EPSILON){y=!1;break a}}}y=!0}}if(y){d.push([a[e[k]],
a[e[g]],a[e[l]]]);f.push([e[k],e[g],e[l]]);k=g;for(l=g+1;l<c;k++,l++)e[k]=e[l];c--;h=2*c}}return b?f:d}}(),triangulateShape:function(a,b){function c(a){var b=a.length;2<b&&a[b-1].equals(a[0])&&a.pop()}function d(a,b,c){return a.x!==b.x?a.x<b.x?a.x<=c.x&&c.x<=b.x:b.x<=c.x&&c.x<=a.x:a.y<b.y?a.y<=c.y&&c.y<=b.y:b.y<=c.y&&c.y<=a.y}function e(a,b,c,e,f){var g=b.x-a.x,h=b.y-a.y,k=e.x-c.x,l=e.y-c.y,m=a.x-c.x,q=a.y-c.y,p=h*k-g*l,n=h*m-g*q;if(Math.abs(p)>Number.EPSILON){if(0<p){if(0>n||n>p)return[];k=l*m-k*
q;if(0>k||k>p)return[]}else{if(0<n||n<p)return[];k=l*m-k*q;if(0<k||k<p)return[]}if(0===k)return!f||0!==n&&n!==p?[a]:[];if(k===p)return!f||0!==n&&n!==p?[b]:[];if(0===n)return[c];if(n===p)return[e];f=k/p;return[{x:a.x+f*g,y:a.y+f*h}]}if(0!==n||l*m!==k*q)return[];h=0===g&&0===h;k=0===k&&0===l;if(h&&k)return a.x!==c.x||a.y!==c.y?[]:[a];if(h)return d(c,e,a)?[a]:[];if(k)return d(a,b,c)?[c]:[];0!==g?(a.x<b.x?(g=a,k=a.x,h=b,a=b.x):(g=b,k=b.x,h=a,a=a.x),c.x<e.x?(b=c,p=c.x,l=e,c=e.x):(b=e,p=e.x,l=c,c=c.x)):
(a.y<b.y?(g=a,k=a.y,h=b,a=b.y):(g=b,k=b.y,h=a,a=a.y),c.y<e.y?(b=c,p=c.y,l=e,c=e.y):(b=e,p=e.y,l=c,c=c.y));return k<=p?a<p?[]:a===p?f?[]:[b]:a<=c?[b,h]:[b,l]:k>c?[]:k===c?f?[]:[g]:a<=c?[g,h]:[g,l]}function f(a,b,c,d){var e=b.x-a.x,f=b.y-a.y;b=c.x-a.x;c=c.y-a.y;var g=d.x-a.x;d=d.y-a.y;a=e*c-f*b;e=e*d-f*g;return Math.abs(a)>Number.EPSILON?(b=g*c-d*b,0<a?0<=e&&0<=b:0<=e||0<=b):0<e}c(a);b.forEach(c);var g,h={},k=a.concat();var l=0;for(g=b.length;l<g;l++)Array.prototype.push.apply(k,b[l]);l=0;for(g=k.length;l<
g;l++){var m=k[l].x+":"+k[l].y;void 0!==h[m]&&console.warn("THREE.ShapeUtils: Duplicate point",m,l);h[m]=l}l=function(a,b){function c(a,b){var c=h.length-1,d=a-1;0>d&&(d=c);var e=a+1;e>c&&(e=0);c=f(h[a],h[d],h[e],D[b]);if(!c)return!1;c=D.length-1;d=b-1;0>d&&(d=c);e=b+1;e>c&&(e=0);return(c=f(D[b],D[d],D[e],h[a]))?!0:!1}function d(a,b){var c;for(c=0;c<h.length;c++){var d=c+1;d%=h.length;d=e(a,b,h[c],h[d],!0);if(0<d.length)return!0}return!1}function g(a,c){var d,f;for(d=0;d<k.length;d++){var g=b[k[d]];
for(f=0;f<g.length;f++){var h=f+1;h%=g.length;h=e(a,c,g[f],g[h],!0);if(0<h.length)return!0}}return!1}var h=a.concat(),k=[],l,m;a=[];var q,p=0;for(l=b.length;p<l;p++)k.push(p);var n=0;for(var t=2*k.length;0<k.length;){t--;if(0>t){console.log('THREE.ShapeUtils: Infinite Loop! Holes left:" + indepHoles.length + ", Probably Hole outside Shape!');break}for(m=n;m<h.length;m++){var w=h[m];l=-1;for(p=0;p<k.length;p++){var z=k[p];var C=w.x+":"+w.y+":"+z;if(void 0===a[C]){var D=b[z];for(q=0;q<D.length;q++)if(z=
D[q],c(m,q)&&!d(w,z)&&!g(w,z)){l=q;k.splice(p,1);n=h.slice(0,m+1);z=h.slice(m);q=D.slice(l);var F=D.slice(0,l+1);h=n.concat(q).concat(F).concat(z);n=m;break}if(0<=l)break;a[C]=!0}}if(0<=l)break}}return h}(a,b);k=Aa.triangulate(l,!1);l=0;for(g=k.length;l<g;l++)for(b=k[l],a=0;3>a;a++)m=b[a].x+":"+b[a].y,m=h[m],void 0!==m&&(b[a]=m);return k.concat()},isClockWise:function(a){return 0>Aa.area(a)}};$a.prototype=Object.create(Q.prototype);$a.prototype.constructor=$a;Ea.prototype=Object.create(F.prototype);
D[q],c(m,q)&&!d(w,z)&&!g(w,z)){l=q;k.splice(p,1);n=h.slice(0,m+1);z=h.slice(m);q=D.slice(l);var F=D.slice(0,l+1);h=n.concat(q).concat(F).concat(z);n=m;break}if(0<=l)break;a[C]=!0}}if(0<=l)break}}return h}(a,b);k=Fa.triangulate(l,!1);l=0;for(g=k.length;l<g;l++)for(b=k[l],a=0;3>a;a++)m=b[a].x+":"+b[a].y,m=h[m],void 0!==m&&(b[a]=m);return k.concat()},isClockWise:function(a){return 0>Fa.area(a)}};$a.prototype=Object.create(Q.prototype);$a.prototype.constructor=$a;Ea.prototype=Object.create(F.prototype);
Ea.prototype.constructor=Ea;Ea.prototype.getArrays=function(){var a=this.getAttribute("position"),a=a?Array.prototype.slice.call(a.array):[],b=this.getAttribute("uv"),b=b?Array.prototype.slice.call(b.array):[],c=this.index,c=c?Array.prototype.slice.call(c.array):[];return{position:a,uv:b,index:c}};Ea.prototype.addShapeList=function(a,b){var c=a.length;b.arrays=this.getArrays();for(var d=0;d<c;d++)this.addShape(a[d],b);this.setIndex(b.arrays.index);this.addAttribute("position",new z(b.arrays.position,
3));this.addAttribute("uv",new z(b.arrays.uv,2))};Ea.prototype.addShape=function(a,b){function c(a,b,c){b||console.error("THREE.ExtrudeGeometry: vec does not exist");return b.clone().multiplyScalar(c).add(a)}function d(a,b,c){var d=a.x-b.x;var e=a.y-b.y;var f=c.x-a.x;var g=c.y-a.y,h=d*d+e*e;if(Math.abs(d*g-e*f)>Number.EPSILON){var k=Math.sqrt(h),l=Math.sqrt(f*f+g*g),h=b.x-e/k;b=b.y+d/k;g=((c.x-g/l-h)*g-(c.y+f/l-b)*f)/(d*g-e*f);f=h+d*g-a.x;d=b+e*g-a.y;e=f*f+d*d;if(2>=e)return new D(f,d);e=Math.sqrt(e/
2)}else a=!1,d>Number.EPSILON?f>Number.EPSILON&&(a=!0):d<-Number.EPSILON?f<-Number.EPSILON&&(a=!0):Math.sign(e)===Math.sign(g)&&(a=!0),a?(f=-e,e=Math.sqrt(h)):(f=d,d=e,e=Math.sqrt(h/2));return new D(f/e,d/e)}function e(a,b){for(G=a.length;0<=--G;){var c=G;var d=G-1;0>d&&(d=a.length-1);var e,f=w+2*x;for(e=0;e<f;e++){var g=X*e,l=X*(e+1),q=b+d+g,p=b+d+l,l=b+c+l;h(b+c+g);h(q);h(l);h(q);h(p);h(l);g=m.length/3;g=F.generateSideWallUV(R,m,g-6,g-3,g-2,g-1);k(g[0]);k(g[1]);k(g[3]);k(g[1]);k(g[2]);k(g[3])}}}
function f(a,b,c){r.push(a);r.push(b);r.push(c)}function g(a,b,c){h(a);h(b);h(c);a=m.length/3;a=F.generateTopUV(R,m,a-3,a-2,a-1);k(a[0]);k(a[1]);k(a[2])}function h(a){p.push(m.length/3);m.push(r[3*a+0]);m.push(r[3*a+1]);m.push(r[3*a+2])}function k(a){t.push(a.x);t.push(a.y)}var l=b.arrays?b.arrays:this.getArrays(),m=l.position,p=l.index,t=l.uv,r=[],l=void 0!==b.amount?b.amount:100,v=void 0!==b.bevelThickness?b.bevelThickness:6,u=void 0!==b.bevelSize?b.bevelSize:v-2,x=void 0!==b.bevelSegments?b.bevelSegments:
3,y=void 0!==b.bevelEnabled?b.bevelEnabled:!0,A=void 0!==b.curveSegments?b.curveSegments:12,w=void 0!==b.steps?b.steps:1,B=b.extrudePath,C=!1,F=void 0!==b.UVGenerator?b.UVGenerator:$a.WorldUVGenerator;if(B){var K=B.getSpacedPoints(w);C=!0;y=!1;var L=void 0!==b.frames?b.frames:B.computeFrenetFrames(w,!1);var O=new n;var Q=new n;var P=new n}y||(u=v=x=0);var J,R=this,A=a.extractPoints(A);a=A.shape;var N=A.holes;if(!Aa.isClockWise(a)){a=a.reverse();var M=0;for(J=N.length;M<J;M++){var T=N[M];Aa.isClockWise(T)&&
(N[M]=T.reverse())}}var V=Aa.triangulateShape(a,N),W=a;M=0;for(J=N.length;M<J;M++)T=N[M],a=a.concat(T);var Y,X=a.length,S,da=V.length,A=[],G=0;var U=W.length;var ca=U-1;for(Y=G+1;G<U;G++,ca++,Y++)ca===U&&(ca=0),Y===U&&(Y=0),A[G]=d(W[G],W[ca],W[Y]);var B=[],ea=A.concat();M=0;for(J=N.length;M<J;M++){T=N[M];var aa=[];G=0;U=T.length;ca=U-1;for(Y=G+1;G<U;G++,ca++,Y++)ca===U&&(ca=0),Y===U&&(Y=0),aa[G]=d(T[G],T[ca],T[Y]);B.push(aa);ea=ea.concat(aa)}for(ca=0;ca<x;ca++){U=ca/x;var fa=v*Math.cos(U*Math.PI/
3,y=void 0!==b.bevelEnabled?b.bevelEnabled:!0,A=void 0!==b.curveSegments?b.curveSegments:12,w=void 0!==b.steps?b.steps:1,B=b.extrudePath,C=!1,F=void 0!==b.UVGenerator?b.UVGenerator:$a.WorldUVGenerator;if(B){var K=B.getSpacedPoints(w);C=!0;y=!1;var L=void 0!==b.frames?b.frames:B.computeFrenetFrames(w,!1);var O=new n;var Q=new n;var P=new n}y||(u=v=x=0);var J,R=this,A=a.extractPoints(A);a=A.shape;var N=A.holes;if(!Fa.isClockWise(a)){a=a.reverse();var M=0;for(J=N.length;M<J;M++){var T=N[M];Fa.isClockWise(T)&&
(N[M]=T.reverse())}}var V=Fa.triangulateShape(a,N),W=a;M=0;for(J=N.length;M<J;M++)T=N[M],a=a.concat(T);var Y,X=a.length,S,da=V.length,A=[],G=0;var U=W.length;var ca=U-1;for(Y=G+1;G<U;G++,ca++,Y++)ca===U&&(ca=0),Y===U&&(Y=0),A[G]=d(W[G],W[ca],W[Y]);var B=[],ea=A.concat();M=0;for(J=N.length;M<J;M++){T=N[M];var aa=[];G=0;U=T.length;ca=U-1;for(Y=G+1;G<U;G++,ca++,Y++)ca===U&&(ca=0),Y===U&&(Y=0),aa[G]=d(T[G],T[ca],T[Y]);B.push(aa);ea=ea.concat(aa)}for(ca=0;ca<x;ca++){U=ca/x;var fa=v*Math.cos(U*Math.PI/
2);Y=u*Math.sin(U*Math.PI/2);G=0;for(U=W.length;G<U;G++){var ha=c(W[G],A[G],Y);f(ha.x,ha.y,-fa)}M=0;for(J=N.length;M<J;M++)for(T=N[M],aa=B[M],G=0,U=T.length;G<U;G++)ha=c(T[G],aa[G],Y),f(ha.x,ha.y,-fa)}Y=u;for(G=0;G<X;G++)ha=y?c(a[G],ea[G],Y):a[G],C?(Q.copy(L.normals[0]).multiplyScalar(ha.x),O.copy(L.binormals[0]).multiplyScalar(ha.y),P.copy(K[0]).add(Q).add(O),f(P.x,P.y,P.z)):f(ha.x,ha.y,0);for(U=1;U<=w;U++)for(G=0;G<X;G++)ha=y?c(a[G],ea[G],Y):a[G],C?(Q.copy(L.normals[U]).multiplyScalar(ha.x),O.copy(L.binormals[U]).multiplyScalar(ha.y),
P.copy(K[U]).add(Q).add(O),f(P.x,P.y,P.z)):f(ha.x,ha.y,l/w*U);for(ca=x-1;0<=ca;ca--){U=ca/x;fa=v*Math.cos(U*Math.PI/2);Y=u*Math.sin(U*Math.PI/2);G=0;for(U=W.length;G<U;G++)ha=c(W[G],A[G],Y),f(ha.x,ha.y,l+fa);M=0;for(J=N.length;M<J;M++)for(T=N[M],aa=B[M],G=0,U=T.length;G<U;G++)ha=c(T[G],aa[G],Y),C?f(ha.x,ha.y+K[w-1].y,K[w-1].x+fa):f(ha.x,ha.y,l+fa)}(function(){var a=m.length/3;if(y){var c=0*X;for(G=0;G<da;G++)S=V[G],g(S[2]+c,S[1]+c,S[0]+c);c=X*(w+2*x);for(G=0;G<da;G++)S=V[G],g(S[0]+c,S[1]+c,S[2]+c)}else{for(G=
0;G<da;G++)S=V[G],g(S[2],S[1],S[0]);for(G=0;G<da;G++)S=V[G],g(S[0]+X*w,S[1]+X*w,S[2]+X*w)}R.addGroup(a,m.length/3-a,void 0!==b.material?b.material:0)})();(function(){var a=m.length/3,c=0;e(W,c);c+=W.length;M=0;for(J=N.length;M<J;M++)T=N[M],e(T,c),c+=T.length;R.addGroup(a,m.length/3-a,void 0!==b.extrudeMaterial?b.extrudeMaterial:1)})();b.arrays||(this.setIndex(p),this.addAttribute("position",new z(m,3)),this.addAttribute("uv",new z(b.arrays.uv,2)))};$a.WorldUVGenerator={generateTopUV:function(a,b,
......@@ -626,13 +626,13 @@ TorusGeometry:Kc,TorusBufferGeometry:Sb,TextGeometry:Lc,TextBufferGeometry:Tb,Sp
$b.prototype=Object.create(P.prototype);$b.prototype.constructor=$b;$b.prototype.isShadowMaterial=!0;ac.prototype=Object.create(ya.prototype);ac.prototype.constructor=ac;ac.prototype.isRawShaderMaterial=!0;Na.prototype=Object.create(P.prototype);Na.prototype.constructor=Na;Na.prototype.isMeshStandardMaterial=!0;Na.prototype.copy=function(a){P.prototype.copy.call(this,a);this.defines={STANDARD:""};this.color.copy(a.color);this.roughness=a.roughness;this.metalness=a.metalness;this.map=a.map;this.lightMap=
a.lightMap;this.lightMapIntensity=a.lightMapIntensity;this.aoMap=a.aoMap;this.aoMapIntensity=a.aoMapIntensity;this.emissive.copy(a.emissive);this.emissiveMap=a.emissiveMap;this.emissiveIntensity=a.emissiveIntensity;this.bumpMap=a.bumpMap;this.bumpScale=a.bumpScale;this.normalMap=a.normalMap;this.normalScale.copy(a.normalScale);this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;this.roughnessMap=a.roughnessMap;this.metalnessMap=
a.metalnessMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.envMapIntensity=a.envMapIntensity;this.refractionRatio=a.refractionRatio;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};mb.prototype=Object.create(Na.prototype);mb.prototype.constructor=mb;mb.prototype.isMeshPhysicalMaterial=
!0;mb.prototype.copy=function(a){Na.prototype.copy.call(this,a);this.defines={PHYSICAL:""};this.reflectivity=a.reflectivity;this.clearCoat=a.clearCoat;this.clearCoatRoughness=a.clearCoatRoughness;return this};Ha.prototype=Object.create(P.prototype);Ha.prototype.constructor=Ha;Ha.prototype.isMeshPhongMaterial=!0;Ha.prototype.copy=function(a){P.prototype.copy.call(this,a);this.color.copy(a.color);this.specular.copy(a.specular);this.shininess=a.shininess;this.map=a.map;this.lightMap=a.lightMap;this.lightMapIntensity=
!0;mb.prototype.copy=function(a){Na.prototype.copy.call(this,a);this.defines={PHYSICAL:""};this.reflectivity=a.reflectivity;this.clearCoat=a.clearCoat;this.clearCoatRoughness=a.clearCoatRoughness;return this};Aa.prototype=Object.create(P.prototype);Aa.prototype.constructor=Aa;Aa.prototype.isMeshPhongMaterial=!0;Aa.prototype.copy=function(a){P.prototype.copy.call(this,a);this.color.copy(a.color);this.specular.copy(a.specular);this.shininess=a.shininess;this.map=a.map;this.lightMap=a.lightMap;this.lightMapIntensity=
a.lightMapIntensity;this.aoMap=a.aoMap;this.aoMapIntensity=a.aoMapIntensity;this.emissive.copy(a.emissive);this.emissiveMap=a.emissiveMap;this.emissiveIntensity=a.emissiveIntensity;this.bumpMap=a.bumpMap;this.bumpScale=a.bumpScale;this.normalMap=a.normalMap;this.normalScale.copy(a.normalScale);this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;this.specularMap=a.specularMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.combine=
a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};nb.prototype=Object.create(Ha.prototype);nb.prototype.constructor=nb;nb.prototype.isMeshToonMaterial=!0;nb.prototype.copy=function(a){Ha.prototype.copy.call(this,
a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};nb.prototype=Object.create(Aa.prototype);nb.prototype.constructor=nb;nb.prototype.isMeshToonMaterial=!0;nb.prototype.copy=function(a){Aa.prototype.copy.call(this,
a);this.gradientMap=a.gradientMap;return this};ob.prototype=Object.create(P.prototype);ob.prototype.constructor=ob;ob.prototype.isMeshNormalMaterial=!0;ob.prototype.copy=function(a){P.prototype.copy.call(this,a);this.bumpMap=a.bumpMap;this.bumpScale=a.bumpScale;this.normalMap=a.normalMap;this.normalScale.copy(a.normalScale);this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;
this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};pb.prototype=Object.create(P.prototype);pb.prototype.constructor=pb;pb.prototype.isMeshLambertMaterial=!0;pb.prototype.copy=function(a){P.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.lightMap=a.lightMap;this.lightMapIntensity=a.lightMapIntensity;this.aoMap=a.aoMap;this.aoMapIntensity=a.aoMapIntensity;this.emissive.copy(a.emissive);this.emissiveMap=a.emissiveMap;this.emissiveIntensity=
a.emissiveIntensity;this.specularMap=a.specularMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.combine=a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};qb.prototype=Object.create(W.prototype);qb.prototype.constructor=
qb;qb.prototype.isLineDashedMaterial=!0;qb.prototype.copy=function(a){W.prototype.copy.call(this,a);this.scale=a.scale;this.dashSize=a.dashSize;this.gapSize=a.gapSize;return this};var sg=Object.freeze({ShadowMaterial:$b,SpriteMaterial:Za,RawShaderMaterial:ac,ShaderMaterial:ya,PointsMaterial:ma,MeshPhysicalMaterial:mb,MeshStandardMaterial:Na,MeshPhongMaterial:Ha,MeshToonMaterial:nb,MeshNormalMaterial:ob,MeshLambertMaterial:pb,MeshDepthMaterial:Wa,MeshDistanceMaterial:Xa,MeshBasicMaterial:sa,LineDashedMaterial:qb,
qb;qb.prototype.isLineDashedMaterial=!0;qb.prototype.copy=function(a){W.prototype.copy.call(this,a);this.scale=a.scale;this.dashSize=a.dashSize;this.gapSize=a.gapSize;return this};var sg=Object.freeze({ShadowMaterial:$b,SpriteMaterial:Za,RawShaderMaterial:ac,ShaderMaterial:ya,PointsMaterial:ma,MeshPhysicalMaterial:mb,MeshStandardMaterial:Na,MeshPhongMaterial:Aa,MeshToonMaterial:nb,MeshNormalMaterial:ob,MeshLambertMaterial:pb,MeshDepthMaterial:Wa,MeshDistanceMaterial:Xa,MeshBasicMaterial:sa,LineDashedMaterial:qb,
LineBasicMaterial:W,Material:P}),hd={enabled:!1,files:{},add:function(a,b){!1!==this.enabled&&(this.files[a]=b)},get:function(a){if(!1!==this.enabled)return this.files[a]},remove:function(a){delete this.files[a]},clear:function(){this.files={}}},oa=new $d;Object.assign(Ia.prototype,{load:function(a,b,c,d){void 0===a&&(a="");void 0!==this.path&&(a=this.path+a);var e=this,f=hd.get(a);if(void 0!==f)return e.manager.itemStart(a),setTimeout(function(){b&&b(f);e.manager.itemEnd(a)},0),f;var g=a.match(/^data:(.*?)(;base64)?,(.*)$/);
if(g){var h=g[1],k=!!g[2],g=g[3],g=window.decodeURIComponent(g);k&&(g=window.atob(g));try{var l=(this.responseType||"").toLowerCase();switch(l){case "arraybuffer":case "blob":var m=new ArrayBuffer(g.length);for(var p=new Uint8Array(m),k=0;k<g.length;k++)p[k]=g.charCodeAt(k);"blob"===l&&(m=new Blob([m],{type:h}));break;case "document":m=(new DOMParser).parseFromString(g,h);break;case "json":m=JSON.parse(g);break;default:m=g}window.setTimeout(function(){b&&b(m);e.manager.itemEnd(a)},0)}catch(r){window.setTimeout(function(){d&&
d(r);e.manager.itemEnd(a);e.manager.itemError(a)},0)}}else{var n=new XMLHttpRequest;n.open("GET",a,!0);n.addEventListener("load",function(c){var f=c.target.response;hd.add(a,f);200===this.status?(b&&b(f),e.manager.itemEnd(a)):0===this.status?(console.warn("THREE.FileLoader: HTTP Status 0 received."),b&&b(f),e.manager.itemEnd(a)):(d&&d(c),e.manager.itemEnd(a),e.manager.itemError(a))},!1);void 0!==c&&n.addEventListener("progress",function(a){c(a)},!1);n.addEventListener("error",function(b){d&&d(b);
......@@ -729,7 +729,7 @@ b),new D(c,d));this.curves.push(a);this.currentPoint.set(c,d)},bezierCurveTo:fun
e,f)},ellipse:function(a,b,c,d,e,f,g,h){this.absellipse(a+this.currentPoint.x,b+this.currentPoint.y,c,d,e,f,g,h)},absellipse:function(a,b,c,d,e,f,g,h){a=new Ua(a,b,c,d,e,f,g,h);0<this.curves.length&&(b=a.getPoint(0),b.equals(this.currentPoint)||this.lineTo(b.x,b.y));this.curves.push(a);a=a.getPoint(1);this.currentPoint.copy(a)}});Wc.prototype=ue;ue.constructor=Wc;xb.prototype=Object.assign(Object.create(ue),{constructor:xb,getPointsHoles:function(a){for(var b=[],c=0,d=this.holes.length;c<d;c++)b[c]=
this.holes[c].getPoints(a);return b},extractAllPoints:function(a){return{shape:this.getPoints(a),holes:this.getPointsHoles(a)}},extractPoints:function(a){return this.extractAllPoints(a)}});Object.assign(ee.prototype,{moveTo:function(a,b){this.currentPath=new Wc;this.subPaths.push(this.currentPath);this.currentPath.moveTo(a,b)},lineTo:function(a,b){this.currentPath.lineTo(a,b)},quadraticCurveTo:function(a,b,c,d){this.currentPath.quadraticCurveTo(a,b,c,d)},bezierCurveTo:function(a,b,c,d,e,f){this.currentPath.bezierCurveTo(a,
b,c,d,e,f)},splineThru:function(a){this.currentPath.splineThru(a)},toShapes:function(a,b){function c(a){for(var b=[],c=0,d=a.length;c<d;c++){var e=a[c],f=new xb;f.curves=e.curves;b.push(f)}return b}function d(a,b){for(var c=b.length,d=!1,e=c-1,f=0;f<c;e=f++){var g=b[e],h=b[f],k=h.x-g.x,l=h.y-g.y;if(Math.abs(l)>Number.EPSILON){if(0>l&&(g=b[f],k=-k,h=b[e],l=-l),!(a.y<g.y||a.y>h.y))if(a.y===g.y){if(a.x===g.x)return!0}else{e=l*(a.x-g.x)-k*(a.y-g.y);if(0===e)return!0;0>e||(d=!d)}}else if(a.y===g.y&&(h.x<=
a.x&&a.x<=g.x||g.x<=a.x&&a.x<=h.x))return!0}return d}var e=Aa.isClockWise,f=this.subPaths;if(0===f.length)return[];if(!0===b)return c(f);b=[];if(1===f.length){var g=f[0];var h=new xb;h.curves=g.curves;b.push(h);return b}var k=!e(f[0].getPoints()),k=a?!k:k;h=[];var l=[],m=[],p=0;l[p]=void 0;m[p]=[];for(var n=0,r=f.length;n<r;n++){g=f[n];var v=g.getPoints();var u=e(v);(u=a?!u:u)?(!k&&l[p]&&p++,l[p]={s:new xb,p:v},l[p].s.curves=g.curves,k&&p++,m[p]=[]):m[p].push({h:g,p:v[0]})}if(!l[0])return c(f);if(1<
a.x&&a.x<=g.x||g.x<=a.x&&a.x<=h.x))return!0}return d}var e=Fa.isClockWise,f=this.subPaths;if(0===f.length)return[];if(!0===b)return c(f);b=[];if(1===f.length){var g=f[0];var h=new xb;h.curves=g.curves;b.push(h);return b}var k=!e(f[0].getPoints()),k=a?!k:k;h=[];var l=[],m=[],p=0;l[p]=void 0;m[p]=[];for(var n=0,r=f.length;n<r;n++){g=f[n];var v=g.getPoints();var u=e(v);(u=a?!u:u)?(!k&&l[p]&&p++,l[p]={s:new xb,p:v},l[p].s.curves=g.curves,k&&p++,m[p]=[]):m[p].push({h:g,p:v[0]})}if(!l[0])return c(f);if(1<
l.length){n=!1;a=[];e=0;for(f=l.length;e<f;e++)h[e]=[];e=0;for(f=l.length;e<f;e++)for(g=m[e],u=0;u<g.length;u++){k=g[u];p=!0;for(v=0;v<l.length;v++)d(k.p,l[v].p)&&(e!==v&&a.push({froms:e,tos:v,hole:u}),p?(p=!1,h[v].push(k)):n=!0);p&&h[e].push(k)}0<a.length&&(n||(m=h))}n=0;for(e=l.length;n<e;n++)for(h=l[n].s,b.push(h),a=m[n],f=0,g=a.length;f<g;f++)h.holes.push(a[f].h);return b}});Object.assign(fe.prototype,{isFont:!0,generateShapes:function(a,b,c){void 0===b&&(b=100);void 0===c&&(c=4);var d=this.data;
a=String(a).split("");var e=b/d.resolution,f=(d.boundingBox.yMax-d.boundingBox.yMin+d.underlineThickness)*e,g=0,h=0;b=[];for(var k=0;k<a.length;k++){var l=a[k];if("\n"===l)g=0,h-=f;else{var m;var p=e;var n=g,r=h;if(l=d.glyphs[l]||d.glyphs["?"]){var v=new ee,u=[];if(l.o)for(var x=l._cachedOutline||(l._cachedOutline=l.o.split(" ")),w=0,z=x.length;w<z;)switch(x[w++]){case "m":var C=x[w++]*p+n;var B=x[w++]*p+r;v.moveTo(C,B);break;case "l":C=x[w++]*p+n;B=x[w++]*p+r;v.lineTo(C,B);break;case "q":var D=x[w++]*
p+n;var F=x[w++]*p+r;var K=x[w++]*p+n;var L=x[w++]*p+r;v.quadraticCurveTo(K,L,D,F);if(m=u[u.length-1]){var O=m.x;m=m.y;for(var N=1;N<=c;N++){var P=N/c;ub(P,O,K,D);ub(P,m,L,F)}}break;case "b":if(D=x[w++]*p+n,F=x[w++]*p+r,K=x[w++]*p+n,L=x[w++]*p+r,C=x[w++]*p+n,B=x[w++]*p+r,v.bezierCurveTo(K,L,C,B,D,F),m=u[u.length-1])for(O=m.x,m=m.y,N=1;N<=c;N++)P=N/c,vb(P,O,K,C,D),vb(P,m,L,B,F)}p={offsetX:l.ha*p,path:v}}else p=void 0;g+=p.offsetX;b.push(p.path)}}c=[];d=0;for(a=b.length;d<a;d++)Array.prototype.push.apply(c,
......@@ -840,11 +840,11 @@ this.shadow.mapSize.width=a}},shadowMapHeight:{set:function(a){console.warn("THR
b,c){void 0!==c&&console.warn("THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset.");console.warn("THREE.BufferGeometry: .addDrawCall() is now .addGroup().");this.addGroup(a,b)},clearDrawCalls:function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups().");this.clearGroups()},computeTangents:function(){console.warn("THREE.BufferGeometry: .computeTangents() has been removed.")},computeOffsets:function(){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")}});
Object.defineProperties(F.prototype,{drawcalls:{get:function(){console.error("THREE.BufferGeometry: .drawcalls has been renamed to .groups.");return this.groups}},offsets:{get:function(){console.warn("THREE.BufferGeometry: .offsets has been renamed to .groups.");return this.groups}}});Object.defineProperties(Id.prototype,{dynamic:{set:function(){console.warn("THREE.Uniform: .dynamic has been removed. Use object.onBeforeRender() instead.")}},onUpdate:{value:function(){console.warn("THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead.");
return this}}});Object.defineProperties(P.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},wrapRGB:{get:function(){console.warn("THREE.Material: .wrapRGB has been removed.");return new C}},shading:{get:function(){console.error("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead.")},set:function(a){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead.");
this.flatShading=a===THREE.FlatShading?!0:!1}}});Object.defineProperties(Ha.prototype,{metal:{get:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead.");return!1},set:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead")}}});Object.defineProperties(ya.prototype,{derivatives:{get:function(){console.warn("THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives.");
return this.extensions.derivatives},set:function(a){console.warn("THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives.");this.extensions.derivatives=a}}});Object.assign(Yd.prototype,{getCurrentRenderTarget:function(){console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget().");return this.getRenderTarget()},getMaxAnisotropy:function(){console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy().");return this.capabilities.getMaxAnisotropy()},
getPrecision:function(){console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision.");return this.capabilities.precision},supportsFloatTextures:function(){console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' ).");return this.extensions.get("OES_texture_float")},supportsHalfFloatTextures:function(){console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' ).");return this.extensions.get("OES_texture_half_float")},
supportsStandardDerivatives:function(){console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' ).");return this.extensions.get("OES_standard_derivatives")},supportsCompressedTextureS3TC:function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' ).");return this.extensions.get("WEBGL_compressed_texture_s3tc")},supportsCompressedTexturePVRTC:function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' ).");
return this.extensions.get("WEBGL_compressed_texture_pvrtc")},supportsBlendMinMax:function(){console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' ).");return this.extensions.get("EXT_blend_minmax")},supportsVertexTextures:function(){console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures.");return this.capabilities.vertexTextures},supportsInstancedArrays:function(){console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' ).");
this.flatShading=1===a}}});Object.defineProperties(Aa.prototype,{metal:{get:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead.");return!1},set:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead")}}});Object.defineProperties(ya.prototype,{derivatives:{get:function(){console.warn("THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives.");return this.extensions.derivatives},
set:function(a){console.warn("THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives.");this.extensions.derivatives=a}}});Object.assign(Yd.prototype,{getCurrentRenderTarget:function(){console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget().");return this.getRenderTarget()},getMaxAnisotropy:function(){console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy().");return this.capabilities.getMaxAnisotropy()},getPrecision:function(){console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision.");
return this.capabilities.precision},supportsFloatTextures:function(){console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' ).");return this.extensions.get("OES_texture_float")},supportsHalfFloatTextures:function(){console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' ).");return this.extensions.get("OES_texture_half_float")},supportsStandardDerivatives:function(){console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' ).");
return this.extensions.get("OES_standard_derivatives")},supportsCompressedTextureS3TC:function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' ).");return this.extensions.get("WEBGL_compressed_texture_s3tc")},supportsCompressedTexturePVRTC:function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' ).");return this.extensions.get("WEBGL_compressed_texture_pvrtc")},
supportsBlendMinMax:function(){console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' ).");return this.extensions.get("EXT_blend_minmax")},supportsVertexTextures:function(){console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures.");return this.capabilities.vertexTextures},supportsInstancedArrays:function(){console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' ).");
return this.extensions.get("ANGLE_instanced_arrays")},enableScissorTest:function(a){console.warn("THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest().");this.setScissorTest(a)},initMaterial:function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")},addPrePlugin:function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")},addPostPlugin:function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")},updateShadowMap:function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")}});
Object.defineProperties(Yd.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled.");this.shadowMap.enabled=a}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type.");this.shadowMap.type=a}},shadowMapCullFace:{get:function(){return this.shadowMap.cullFace},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapCullFace is now .shadowMap.cullFace.");
this.shadowMap.cullFace=a}}});Object.defineProperties(Ke.prototype,{cullFace:{get:function(){return this.renderReverseSided?2:1},set:function(a){a=1!==a;console.warn("WebGLRenderer: .shadowMap.cullFace is deprecated. Set .shadowMap.renderReverseSided to "+a+".");this.renderReverseSided=a}}});Object.defineProperties(Ab.prototype,{wrapS:{get:function(){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.");return this.texture.wrapS},set:function(a){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.");
......@@ -858,10 +858,10 @@ oc;m.DepthTexture=Bc;m.Texture=N;m.CompressedTextureLoader=Re;m.DataTextureLoade
m.LightShadow=rb;m.Light=aa;m.StereoCamera=Ve;m.PerspectiveCamera=ja;m.OrthographicCamera=Db;m.CubeCamera=Xc;m.ArrayCamera=md;m.Camera=Ma;m.AudioListener=he;m.PositionalAudio=je;m.AudioContext=ie;m.AudioAnalyser=ke;m.Audio=gc;m.VectorKeyframeTrack=bc;m.StringKeyframeTrack=Ed;m.QuaternionKeyframeTrack=Uc;m.NumberKeyframeTrack=cc;m.ColorKeyframeTrack=Gd;m.BooleanKeyframeTrack=Fd;m.PropertyMixer=le;m.PropertyBinding=da;m.KeyframeTrack=tb;m.AnimationUtils=ea;m.AnimationObjectGroup=Xe;m.AnimationMixer=
Ze;m.AnimationClip=Ba;m.Uniform=Id;m.InstancedBufferGeometry=me;m.BufferGeometry=F;m.GeometryIdCount=function(){return Rd++};m.Geometry=Q;m.InterleavedBufferAttribute=ne;m.InstancedInterleavedBuffer=oe;m.InterleavedBuffer=hc;m.InstancedBufferAttribute=pe;m.Face3=Qa;m.Object3D=w;m.Raycaster=$e;m.Layers=Qd;m.EventDispatcher=na;m.Clock=bf;m.QuaternionLinearInterpolant=Dd;m.LinearInterpolant=Tc;m.DiscreteInterpolant=Cd;m.CubicInterpolant=Bd;m.Interpolant=wa;m.Triangle=Ra;m.Math=R;m.Spherical=cf;m.Cylindrical=
df;m.Plane=za;m.Frustum=kd;m.Sphere=Ca;m.Ray=hb;m.Matrix4=O;m.Matrix3=qa;m.Box3=Pa;m.Box2=id;m.Line3=Fb;m.Euler=Ya;m.Vector4=S;m.Vector3=n;m.Vector2=D;m.Quaternion=ia;m.Color=C;m.ImmediateRenderObject=Yc;m.VertexNormalsHelper=Zc;m.SpotLightHelper=ic;m.SkeletonHelper=jc;m.PointLightHelper=kc;m.RectAreaLightHelper=lc;m.HemisphereLightHelper=mc;m.GridHelper=$c;m.PolarGridHelper=Jd;m.FaceNormalsHelper=ad;m.DirectionalLightHelper=nc;m.CameraHelper=bd;m.BoxHelper=yb;m.Box3Helper=cd;m.PlaneHelper=dd;m.ArrowHelper=
zb;m.AxisHelper=Ld;m.CatmullRomCurve3=Ja;m.CubicBezierCurve3=ed;m.QuadraticBezierCurve3=fd;m.LineCurve3=gd;m.ArcCurve=Md;m.EllipseCurve=Ua;m.SplineCurve=wb;m.CubicBezierCurve=ec;m.QuadraticBezierCurve=fc;m.LineCurve=Oa;m.Shape=xb;m.Path=Wc;m.ShapePath=ee;m.Font=fe;m.CurvePath=Vc;m.Curve=pa;m.ShapeUtils=Aa;m.SceneUtils={createMultiMaterialObject:function(a,b){for(var c=new Ac,d=0,e=b.length;d<e;d++)c.add(new fa(a,b[d]));return c},detach:function(a,b,c){a.applyMatrix(b.matrixWorld);b.remove(a);c.add(a)},
zb;m.AxisHelper=Ld;m.CatmullRomCurve3=Ja;m.CubicBezierCurve3=ed;m.QuadraticBezierCurve3=fd;m.LineCurve3=gd;m.ArcCurve=Md;m.EllipseCurve=Ua;m.SplineCurve=wb;m.CubicBezierCurve=ec;m.QuadraticBezierCurve=fc;m.LineCurve=Oa;m.Shape=xb;m.Path=Wc;m.ShapePath=ee;m.Font=fe;m.CurvePath=Vc;m.Curve=pa;m.ShapeUtils=Fa;m.SceneUtils={createMultiMaterialObject:function(a,b){for(var c=new Ac,d=0,e=b.length;d<e;d++)c.add(new fa(a,b[d]));return c},detach:function(a,b,c){a.applyMatrix(b.matrixWorld);b.remove(a);c.add(a)},
attach:function(a,b,c){a.applyMatrix((new O).getInverse(c.matrixWorld));b.remove(a);c.add(a)}};m.WebGLUtils=Qe;m.WireframeGeometry=Lb;m.ParametricGeometry=Cc;m.ParametricBufferGeometry=Mb;m.TetrahedronGeometry=Ec;m.TetrahedronBufferGeometry=Nb;m.OctahedronGeometry=Fc;m.OctahedronBufferGeometry=jb;m.IcosahedronGeometry=Gc;m.IcosahedronBufferGeometry=Ob;m.DodecahedronGeometry=Hc;m.DodecahedronBufferGeometry=Pb;m.PolyhedronGeometry=Dc;m.PolyhedronBufferGeometry=ua;m.TubeGeometry=Ic;m.TubeBufferGeometry=
Qb;m.TorusKnotGeometry=Jc;m.TorusKnotBufferGeometry=Rb;m.TorusGeometry=Kc;m.TorusBufferGeometry=Sb;m.TextGeometry=Lc;m.TextBufferGeometry=Tb;m.SphereGeometry=Mc;m.SphereBufferGeometry=kb;m.RingGeometry=Nc;m.RingBufferGeometry=Ub;m.PlaneGeometry=vc;m.PlaneBufferGeometry=gb;m.LatheGeometry=Oc;m.LatheBufferGeometry=Vb;m.ShapeGeometry=Wb;m.ShapeBufferGeometry=Xb;m.ExtrudeGeometry=$a;m.ExtrudeBufferGeometry=Ea;m.EdgesGeometry=Yb;m.ConeGeometry=Pc;m.ConeBufferGeometry=Qc;m.CylinderGeometry=lb;m.CylinderBufferGeometry=
Ta;m.CircleGeometry=Rc;m.CircleBufferGeometry=Zb;m.BoxGeometry=Eb;m.BoxBufferGeometry=fb;m.ShadowMaterial=$b;m.SpriteMaterial=Za;m.RawShaderMaterial=ac;m.ShaderMaterial=ya;m.PointsMaterial=ma;m.MeshPhysicalMaterial=mb;m.MeshStandardMaterial=Na;m.MeshPhongMaterial=Ha;m.MeshToonMaterial=nb;m.MeshNormalMaterial=ob;m.MeshLambertMaterial=pb;m.MeshDepthMaterial=Wa;m.MeshDistanceMaterial=Xa;m.MeshBasicMaterial=sa;m.LineDashedMaterial=qb;m.LineBasicMaterial=W;m.Material=P;m.Float64BufferAttribute=uc;m.Float32BufferAttribute=
Ta;m.CircleGeometry=Rc;m.CircleBufferGeometry=Zb;m.BoxGeometry=Eb;m.BoxBufferGeometry=fb;m.ShadowMaterial=$b;m.SpriteMaterial=Za;m.RawShaderMaterial=ac;m.ShaderMaterial=ya;m.PointsMaterial=ma;m.MeshPhysicalMaterial=mb;m.MeshStandardMaterial=Na;m.MeshPhongMaterial=Aa;m.MeshToonMaterial=nb;m.MeshNormalMaterial=ob;m.MeshLambertMaterial=pb;m.MeshDepthMaterial=Wa;m.MeshDistanceMaterial=Xa;m.MeshBasicMaterial=sa;m.LineDashedMaterial=qb;m.LineBasicMaterial=W;m.Material=P;m.Float64BufferAttribute=uc;m.Float32BufferAttribute=
z;m.Uint32BufferAttribute=eb;m.Int32BufferAttribute=tc;m.Uint16BufferAttribute=db;m.Int16BufferAttribute=sc;m.Uint8ClampedBufferAttribute=rc;m.Uint8BufferAttribute=qc;m.Int8BufferAttribute=pc;m.BufferAttribute=K;m.REVISION="87";m.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2};m.CullFaceNone=0;m.CullFaceBack=1;m.CullFaceFront=2;m.CullFaceFrontBack=3;m.FrontFaceDirectionCW=0;m.FrontFaceDirectionCCW=1;m.BasicShadowMap=0;m.PCFShadowMap=1;m.PCFSoftShadowMap=2;m.FrontSide=0;m.BackSide=1;m.DoubleSide=2;m.FlatShading=1;
m.SmoothShading=2;m.NoColors=0;m.FaceColors=1;m.VertexColors=2;m.NoBlending=0;m.NormalBlending=1;m.AdditiveBlending=2;m.SubtractiveBlending=3;m.MultiplyBlending=4;m.CustomBlending=5;m.AddEquation=100;m.SubtractEquation=101;m.ReverseSubtractEquation=102;m.MinEquation=103;m.MaxEquation=104;m.ZeroFactor=200;m.OneFactor=201;m.SrcColorFactor=202;m.OneMinusSrcColorFactor=203;m.SrcAlphaFactor=204;m.OneMinusSrcAlphaFactor=205;m.DstAlphaFactor=206;m.OneMinusDstAlphaFactor=207;m.DstColorFactor=208;m.OneMinusDstColorFactor=
209;m.SrcAlphaSaturateFactor=210;m.NeverDepth=0;m.AlwaysDepth=1;m.LessDepth=2;m.LessEqualDepth=3;m.EqualDepth=4;m.GreaterEqualDepth=5;m.GreaterDepth=6;m.NotEqualDepth=7;m.MultiplyOperation=0;m.MixOperation=1;m.AddOperation=2;m.NoToneMapping=0;m.LinearToneMapping=1;m.ReinhardToneMapping=2;m.Uncharted2ToneMapping=3;m.CineonToneMapping=4;m.UVMapping=300;m.CubeReflectionMapping=301;m.CubeRefractionMapping=302;m.EquirectangularReflectionMapping=303;m.EquirectangularRefractionMapping=304;m.SphericalReflectionMapping=
......
......@@ -21880,6 +21880,7 @@ function WebGLRenderer( parameters ) {
if ( isAnimating ) return;
( vr.getDevice() || window ).requestAnimationFrame( loop );
isAnimating = true;
}
......@@ -43335,7 +43336,7 @@ Object.defineProperties( Material.prototype, {
set: function ( value ) {
console.warn( 'THREE.' + this.type + ': .shading has been removed. Use the boolean .flatShading instead.' );
this.flatShading = ( value === THREE.FlatShading ) ? true : false;
this.flatShading = ( value === FlatShading );
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册