|
@@ -12,10 +12,10 @@ b;this.c=c;this.normal=d&&d.isVector3?d:new n;this.vertexNormals=Array.isArray(d
|
|
|
this.blendDstAlpha=this.blendSrcAlpha=null;this.depthFunc=3;this.depthWrite=this.depthTest=!0;this.stencilWriteMask=255;this.stencilFunc=519;this.stencilRef=0;this.stencilFuncMask=255;this.stencilZPass=this.stencilZFail=this.stencilFail=7680;this.stencilWrite=!1;this.clippingPlanes=null;this.clipShadows=this.clipIntersection=!1;this.shadowSide=null;this.colorWrite=!0;this.precision=null;this.polygonOffset=!1;this.polygonOffsetUnits=this.polygonOffsetFactor=0;this.dithering=!1;this.alphaTest=0;this.premultipliedAlpha=
|
|
|
!1;this.toneMapped=this.visible=!0;this.userData={};this.version=0}function Na(a){K.call(this);this.type="MeshBasicMaterial";this.color=new C(16777215);this.lightMap=this.map=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;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.morphTargets=this.skinning=!1;this.setValues(a)}
|
|
|
function L(a,b,c){if(Array.isArray(a))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.name="";this.array=a;this.itemSize=b;this.count=void 0!==a?a.length/b:0;this.normalized=!0===c;this.usage=35044;this.updateRange={offset:0,count:-1};this.version=0}function Ad(a,b,c){L.call(this,new Int8Array(a),b,c)}function Bd(a,b,c){L.call(this,new Uint8Array(a),b,c)}function Cd(a,b,c){L.call(this,new Uint8ClampedArray(a),b,c)}function Dd(a,b,c){L.call(this,new Int16Array(a),
|
|
|
-b,c)}function Vb(a,b,c){L.call(this,new Uint16Array(a),b,c)}function Ed(a,b,c){L.call(this,new Int32Array(a),b,c)}function Wb(a,b,c){L.call(this,new Uint32Array(a),b,c)}function B(a,b,c){L.call(this,new Float32Array(a),b,c)}function Fd(a,b,c){L.call(this,new Float64Array(a),b,c)}function wh(){this.vertices=[];this.normals=[];this.colors=[];this.uvs=[];this.uvs2=[];this.groups=[];this.morphTargets={};this.skinWeights=[];this.skinIndices=[];this.boundingSphere=this.boundingBox=null;this.groupsNeedUpdate=
|
|
|
-this.uvsNeedUpdate=this.colorsNeedUpdate=this.normalsNeedUpdate=this.verticesNeedUpdate=!1}function xh(a){if(0===a.length)return-Infinity;for(var b=a[0],c=1,d=a.length;c<d;++c)a[c]>b&&(b=a[c]);return b}function A(){Object.defineProperty(this,"id",{value:rj+=2});this.uuid=M.generateUUID();this.name="";this.type="BufferGeometry";this.index=null;this.attributes={};this.morphAttributes={};this.morphTargetsRelative=!1;this.groups=[];this.boundingSphere=this.boundingBox=null;this.drawRange={start:0,count:Infinity};
|
|
|
-this.userData={}}function ca(a,b){E.call(this);this.type="Mesh";this.geometry=void 0!==a?a:new A;this.material=void 0!==b?b:new Na;this.updateMorphTargets()}function yh(a,b,c,d,e,f,g,k){if(null===(1===b.side?d.intersectTriangle(g,f,e,!0,k):d.intersectTriangle(e,f,g,2!==b.side,k)))return null;Ie.copy(k);Ie.applyMatrix4(a.matrixWorld);b=c.ray.origin.distanceTo(Ie);return b<c.near||b>c.far?null:{distance:b,point:Ie.clone(),object:a}}function Je(a,b,c,d,e,f,g,k,l,m,x,p){Xb.fromBufferAttribute(e,m);Yb.fromBufferAttribute(e,
|
|
|
-x);Zb.fromBufferAttribute(e,p);e=a.morphTargetInfluences;if(b.morphTargets&&f&&e){Ke.set(0,0,0);Le.set(0,0,0);Me.set(0,0,0);for(var q=0,t=f.length;q<t;q++){var r=e[q],h=f[q];0!==r&&(eg.fromBufferAttribute(h,m),fg.fromBufferAttribute(h,x),gg.fromBufferAttribute(h,p),g?(Ke.addScaledVector(eg,r),Le.addScaledVector(fg,r),Me.addScaledVector(gg,r)):(Ke.addScaledVector(eg.sub(Xb),r),Le.addScaledVector(fg.sub(Yb),r),Me.addScaledVector(gg.sub(Zb),r)))}Xb.add(Ke);Yb.add(Le);Zb.add(Me)}if(a=yh(a,b,c,d,Xb,Yb,
|
|
|
+b,c)}function Vb(a,b,c){L.call(this,new Uint16Array(a),b,c)}function Ed(a,b,c){L.call(this,new Int32Array(a),b,c)}function Wb(a,b,c){L.call(this,new Uint32Array(a),b,c)}function B(a,b,c){L.call(this,new Float32Array(a),b,c)}function Fd(a,b,c){L.call(this,new Float64Array(a),b,c)}function xh(){this.vertices=[];this.normals=[];this.colors=[];this.uvs=[];this.uvs2=[];this.groups=[];this.morphTargets={};this.skinWeights=[];this.skinIndices=[];this.boundingSphere=this.boundingBox=null;this.groupsNeedUpdate=
|
|
|
+this.uvsNeedUpdate=this.colorsNeedUpdate=this.normalsNeedUpdate=this.verticesNeedUpdate=!1}function yh(a){if(0===a.length)return-Infinity;for(var b=a[0],c=1,d=a.length;c<d;++c)a[c]>b&&(b=a[c]);return b}function A(){Object.defineProperty(this,"id",{value:rj+=2});this.uuid=M.generateUUID();this.name="";this.type="BufferGeometry";this.index=null;this.attributes={};this.morphAttributes={};this.morphTargetsRelative=!1;this.groups=[];this.boundingSphere=this.boundingBox=null;this.drawRange={start:0,count:Infinity};
|
|
|
+this.userData={}}function ca(a,b){E.call(this);this.type="Mesh";this.geometry=void 0!==a?a:new A;this.material=void 0!==b?b:new Na;this.updateMorphTargets()}function zh(a,b,c,d,e,f,g,k){if(null===(1===b.side?d.intersectTriangle(g,f,e,!0,k):d.intersectTriangle(e,f,g,2!==b.side,k)))return null;Ie.copy(k);Ie.applyMatrix4(a.matrixWorld);b=c.ray.origin.distanceTo(Ie);return b<c.near||b>c.far?null:{distance:b,point:Ie.clone(),object:a}}function Je(a,b,c,d,e,f,g,k,l,m,x,p){Xb.fromBufferAttribute(e,m);Yb.fromBufferAttribute(e,
|
|
|
+x);Zb.fromBufferAttribute(e,p);e=a.morphTargetInfluences;if(b.morphTargets&&f&&e){Ke.set(0,0,0);Le.set(0,0,0);Me.set(0,0,0);for(var q=0,t=f.length;q<t;q++){var r=e[q],h=f[q];0!==r&&(eg.fromBufferAttribute(h,m),fg.fromBufferAttribute(h,x),gg.fromBufferAttribute(h,p),g?(Ke.addScaledVector(eg,r),Le.addScaledVector(fg,r),Me.addScaledVector(gg,r)):(Ke.addScaledVector(eg.sub(Xb),r),Le.addScaledVector(fg.sub(Yb),r),Me.addScaledVector(gg.sub(Zb),r)))}Xb.add(Ke);Yb.add(Le);Zb.add(Me)}if(a=zh(a,b,c,d,Xb,Yb,
|
|
|
Zb,Gd))k&&(Bc.fromBufferAttribute(k,m),Cc.fromBufferAttribute(k,x),Dc.fromBufferAttribute(k,p),a.uv=na.getUV(Gd,Xb,Yb,Zb,Bc,Cc,Dc,new v)),l&&(Bc.fromBufferAttribute(l,m),Cc.fromBufferAttribute(l,x),Dc.fromBufferAttribute(l,p),a.uv2=na.getUV(Gd,Xb,Yb,Zb,Bc,Cc,Dc,new v)),k=new Ac(m,x,p),na.getNormal(Xb,Yb,Zb,k.normal),a.face=k;return a}function N(){Object.defineProperty(this,"id",{value:sj+=2});this.uuid=M.generateUUID();this.name="";this.type="Geometry";this.vertices=[];this.colors=[];this.faces=[];
|
|
|
this.faceVertexUvs=[[]];this.morphTargets=[];this.morphNormals=[];this.skinWeights=[];this.skinIndices=[];this.lineDistances=[];this.boundingSphere=this.boundingBox=null;this.groupsNeedUpdate=this.lineDistancesNeedUpdate=this.colorsNeedUpdate=this.normalsNeedUpdate=this.uvsNeedUpdate=this.verticesNeedUpdate=this.elementsNeedUpdate=!1}function Ec(a){var b={},c;for(c in a){b[c]={};for(var d in a[c]){var e=a[c][d];e&&(e.isColor||e.isMatrix3||e.isMatrix4||e.isVector2||e.isVector3||e.isVector4||e.isTexture)?
|
|
|
b[c][d]=e.clone():Array.isArray(e)?b[c][d]=e.slice():b[c][d]=e}}return b}function oa(a){for(var b={},c=0;c<a.length;c++){var d=Ec(a[c]),e;for(e in d)b[e]=d[e]}return b}function pa(a){K.call(this);this.type="ShaderMaterial";this.defines={};this.uniforms={};this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}";this.fragmentShader="void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}";this.linewidth=1;this.wireframe=!1;this.wireframeLinewidth=
|
|
@@ -24,7 +24,7 @@ new P;this.projectionMatrix=new P;this.projectionMatrixInverse=new P}function ea
|
|
|
-1,0);f.lookAt(new n(-1,0,0));this.add(f);var g=new ea(90,1,a,b);g.up.set(0,0,1);g.lookAt(new n(0,1,0));this.add(g);var k=new ea(90,1,a,b);k.up.set(0,0,-1);k.lookAt(new n(0,-1,0));this.add(k);var l=new ea(90,1,a,b);l.up.set(0,-1,0);l.lookAt(new n(0,0,1));this.add(l);var m=new ea(90,1,a,b);m.up.set(0,-1,0);m.lookAt(new n(0,0,-1));this.add(m);d=d||{format:1022,magFilter:1006,minFilter:1006};this.renderTarget=new Cb(c,d);this.renderTarget.texture.name="CubeCamera";this.update=function(a,b){null===this.parent&&
|
|
|
this.updateMatrixWorld();var c=a.getRenderTarget(),d=this.renderTarget,p=d.texture.generateMipmaps;d.texture.generateMipmaps=!1;a.setRenderTarget(d,0);a.render(b,e);a.setRenderTarget(d,1);a.render(b,f);a.setRenderTarget(d,2);a.render(b,g);a.setRenderTarget(d,3);a.render(b,k);a.setRenderTarget(d,4);a.render(b,l);d.texture.generateMipmaps=p;a.setRenderTarget(d,5);a.render(b,m);a.setRenderTarget(c)};this.clear=function(a,b,c,d){for(var e=a.getRenderTarget(),f=this.renderTarget,g=0;6>g;g++)a.setRenderTarget(f,
|
|
|
g),a.clear(b,c,d);a.setRenderTarget(e)}}function Cb(a,b,c){Number.isInteger(b)&&(console.warn("THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )"),b=c);wa.call(this,a,a,b)}function $b(a,b,c,d,e,f,g,k,l,m,x,p){Z.call(this,null,f,g,k,l,m,d,e,x,p);this.image={data:a||null,width:b||1,height:c||1};this.magFilter=void 0!==l?l:1003;this.minFilter=void 0!==m?m:1003;this.flipY=this.generateMipmaps=!1;this.unpackAlignment=1;this.needsUpdate=!0}function Gc(a,b,
|
|
|
-c,d,e,f){this.planes=[void 0!==a?a:new Sa,void 0!==b?b:new Sa,void 0!==c?c:new Sa,void 0!==d?d:new Sa,void 0!==e?e:new Sa,void 0!==f?f:new Sa]}function zh(){function a(e,f){!1!==c&&(d(e,f),b.requestAnimationFrame(a))}var b=null,c=!1,d=null;return{start:function(){!0!==c&&null!==d&&(b.requestAnimationFrame(a),c=!0)},stop:function(){c=!1},setAnimationLoop:function(a){d=a},setContext:function(a){b=a}}}function tj(a,b){function c(b,c){var d=b.array,e=b.usage,f=a.createBuffer();a.bindBuffer(c,f);a.bufferData(c,
|
|
|
+c,d,e,f){this.planes=[void 0!==a?a:new Sa,void 0!==b?b:new Sa,void 0!==c?c:new Sa,void 0!==d?d:new Sa,void 0!==e?e:new Sa,void 0!==f?f:new Sa]}function Ah(){function a(e,f){!1!==c&&(d(e,f),b.requestAnimationFrame(a))}var b=null,c=!1,d=null;return{start:function(){!0!==c&&null!==d&&(b.requestAnimationFrame(a),c=!0)},stop:function(){c=!1},setAnimationLoop:function(a){d=a},setContext:function(a){b=a}}}function tj(a,b){function c(b,c){var d=b.array,e=b.usage,f=a.createBuffer();a.bindBuffer(c,f);a.bufferData(c,
|
|
|
d,e);b.onUploadCallback();c=5126;d instanceof Float32Array?c=5126:d instanceof Float64Array?console.warn("THREE.WebGLAttributes: Unsupported data buffer format: Float64Array."):d instanceof Uint16Array?c=5123:d instanceof Int16Array?c=5122:d instanceof Uint32Array?c=5125:d instanceof Int32Array?c=5124:d instanceof Int8Array?c=5120:d instanceof Uint8Array&&(c=5121);return{buffer:f,type:c,bytesPerElement:d.BYTES_PER_ELEMENT,version:b.version}}var d=b.isWebGL2,e=new WeakMap;return{get:function(a){a.isInterleavedBufferAttribute&&
|
|
|
(a=a.data);return e.get(a)},remove:function(b){b.isInterleavedBufferAttribute&&(b=b.data);var c=e.get(b);c&&(a.deleteBuffer(c.buffer),e.delete(b))},update:function(b,g){b.isInterleavedBufferAttribute&&(b=b.data);var f=e.get(b);if(void 0===f)e.set(b,c(b,g));else if(f.version<b.version){var l=b.array,m=b.updateRange;a.bindBuffer(g,f.buffer);-1===m.count?a.bufferSubData(g,0,l):(d?a.bufferSubData(g,m.offset*l.BYTES_PER_ELEMENT,l,m.offset,m.count):a.bufferSubData(g,m.offset*l.BYTES_PER_ELEMENT,l.subarray(m.offset,
|
|
|
m.offset+m.count)),m.count=-1);f.version=b.version}}}}function Hd(a,b,c,d){N.call(this);this.type="PlaneGeometry";this.parameters={width:a,height:b,widthSegments:c,heightSegments:d};this.fromBufferGeometry(new ac(a,b,c,d));this.mergeVertices()}function ac(a,b,c,d){A.call(this);this.type="PlaneBufferGeometry";this.parameters={width:a,height:b,widthSegments:c,heightSegments:d};a=a||1;b=b||1;var e=a/2,f=b/2;c=Math.floor(c)||1;d=Math.floor(d)||1;var g=c+1,k=d+1,l=a/c,m=b/d,x=[],p=[],q=[],t=[];for(a=0;a<
|
|
@@ -41,52 +41,52 @@ d),g[d+3]=k.constant}m.value=g;m.needsUpdate=!0}c.numPlanes=f;return g}var c=thi
|
|
|
null;m.value=x;x=b(c,h,p,u);for(c=0;c!==p;++c)x[c]=d[c];r.clippingState=x;this.numIntersection=k?this.numPlanes:0;this.numPlanes+=l}}}function yj(a){var b={};return{get:function(c){if(void 0!==b[c])return b[c];switch(c){case "WEBGL_depth_texture":var d=a.getExtension("WEBGL_depth_texture")||a.getExtension("MOZ_WEBGL_depth_texture")||a.getExtension("WEBKIT_WEBGL_depth_texture");break;case "EXT_texture_filter_anisotropic":d=a.getExtension("EXT_texture_filter_anisotropic")||a.getExtension("MOZ_EXT_texture_filter_anisotropic")||
|
|
|
a.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case "WEBGL_compressed_texture_s3tc":d=a.getExtension("WEBGL_compressed_texture_s3tc")||a.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||a.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case "WEBGL_compressed_texture_pvrtc":d=a.getExtension("WEBGL_compressed_texture_pvrtc")||a.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:d=a.getExtension(c)}null===d&&console.warn("THREE.WebGLRenderer: "+c+" extension not supported.");
|
|
|
return b[c]=d}}}function zj(a,b,c){function d(a){var e=a.target;a=f.get(e);null!==a.index&&b.remove(a.index);for(var k in a.attributes)b.remove(a.attributes[k]);e.removeEventListener("dispose",d);f.delete(e);if(k=g.get(a))b.remove(k),g.delete(a);c.memory.geometries--}function e(a){var c=[],d=a.index,e=a.attributes.position;if(null!==d){var f=d.array;d=d.version;e=0;for(var k=f.length;e<k;e+=3){var h=f[e+0],r=f[e+1],u=f[e+2];c.push(h,r,r,u,u,h)}}else for(f=e.array,d=e.version,e=0,k=f.length/3-1;e<
|
|
|
-k;e+=3)h=e+0,r=e+1,u=e+2,c.push(h,r,r,u,u,h);c=new (65535<xh(c)?Wb:Vb)(c,1);c.version=d;b.update(c,34963);(f=g.get(a))&&b.remove(f);g.set(a,c)}var f=new WeakMap,g=new WeakMap;return{get:function(a,b){var e=f.get(b);if(e)return e;b.addEventListener("dispose",d);b.isBufferGeometry?e=b:b.isGeometry&&(void 0===b._bufferGeometry&&(b._bufferGeometry=(new A).setFromObject(a)),e=b._bufferGeometry);f.set(b,e);c.memory.geometries++;return e},update:function(a){var c=a.index,d=a.attributes;null!==c&&b.update(c,
|
|
|
+k;e+=3)h=e+0,r=e+1,u=e+2,c.push(h,r,r,u,u,h);c=new (65535<yh(c)?Wb:Vb)(c,1);c.version=d;b.update(c,34963);(f=g.get(a))&&b.remove(f);g.set(a,c)}var f=new WeakMap,g=new WeakMap;return{get:function(a,b){var e=f.get(b);if(e)return e;b.addEventListener("dispose",d);b.isBufferGeometry?e=b:b.isGeometry&&(void 0===b._bufferGeometry&&(b._bufferGeometry=(new A).setFromObject(a)),e=b._bufferGeometry);f.set(b,e);c.memory.geometries++;return e},update:function(a){var c=a.index,d=a.attributes;null!==c&&b.update(c,
|
|
|
34963);for(var e in d)b.update(d[e],34962);a=a.morphAttributes;for(e in a){c=a[e];d=0;for(var f=c.length;d<f;d++)b.update(c[d],34962)}},getWireframeAttribute:function(a){var b=g.get(a);if(b){var c=a.index;null!==c&&b.version<c.version&&e(a)}else e(a);return g.get(a)}}}function Aj(a,b,c,d){var e=d.isWebGL2,f,g,k;this.setMode=function(a){f=a};this.setIndex=function(a){g=a.type;k=a.bytesPerElement};this.render=function(b,d){a.drawElements(f,d,g,b*k);c.update(d,f)};this.renderInstances=function(d,m,x,
|
|
|
p){if(0!==p){if(e){d=a;var l="drawElementsInstanced"}else if(d=b.get("ANGLE_instanced_arrays"),l="drawElementsInstancedANGLE",null===d){console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");return}d[l](f,x,g,m*k,p);c.update(x,f,p)}}}function Bj(a){var b={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:b,programs:null,autoReset:!0,reset:function(){b.frame++;
|
|
|
b.calls=0;b.triangles=0;b.points=0;b.lines=0},update:function(a,d,e){e=e||1;b.calls++;switch(d){case 4:b.triangles+=a/3*e;break;case 1:b.lines+=a/2*e;break;case 3:b.lines+=e*(a-1);break;case 2:b.lines+=e*a;break;case 0:b.points+=e*a;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",d)}}}}function Cj(a,b){return Math.abs(b[1])-Math.abs(a[1])}function Dj(a){var b={},c=new Float32Array(8);return{update:function(d,e,f,g){var k=d.morphTargetInfluences,l=void 0===k?0:k.length;d=b[e.id];
|
|
|
if(void 0===d){d=[];for(var m=0;m<l;m++)d[m]=[m,0];b[e.id]=d}var x=f.morphTargets&&e.morphAttributes.position;f=f.morphNormals&&e.morphAttributes.normal;for(m=0;m<l;m++){var p=d[m];0!==p[1]&&(x&&e.deleteAttribute("morphTarget"+m),f&&e.deleteAttribute("morphNormal"+m))}for(m=0;m<l;m++)p=d[m],p[0]=m,p[1]=k[m];d.sort(Cj);for(m=k=0;8>m;m++){if(p=d[m])if(l=p[0],p=p[1]){x&&e.setAttribute("morphTarget"+m,x[l]);f&&e.setAttribute("morphNormal"+m,f[l]);c[m]=p;k+=p;continue}c[m]=0}e=e.morphTargetsRelative?1:
|
|
|
1-k;g.getUniforms().setValue(a,"morphTargetBaseInfluence",e);g.getUniforms().setValue(a,"morphTargetInfluences",c)}}}function Ej(a,b,c,d){var e={};return{update:function(a){var f=d.render.frame,k=a.geometry,l=b.get(a,k);e[l.id]!==f&&(k.isGeometry&&l.updateFromObject(a),b.update(l),e[l.id]=f);a.isInstancedMesh&&c.update(a.instanceMatrix,34962);return l},dispose:function(){e={}}}}function pb(a,b,c,d,e,f,g,k,l,m){a=void 0!==a?a:[];Z.call(this,a,void 0!==b?b:301,c,d,e,f,void 0!==g?g:1022,k,l,m);this.flipY=
|
|
|
-!1}function Hc(a,b,c,d){Z.call(this,null);this.image={data:a||null,width:b||1,height:c||1,depth:d||1};this.minFilter=this.magFilter=1003;this.wrapR=1001;this.flipY=this.generateMipmaps=!1;this.needsUpdate=!0}function Ic(a,b,c,d){Z.call(this,null);this.image={data:a||null,width:b||1,height:c||1,depth:d||1};this.minFilter=this.magFilter=1003;this.wrapR=1001;this.flipY=this.generateMipmaps=!1;this.needsUpdate=!0}function Jc(a,b,c){var d=a[0];if(0>=d||0<d)return a;var e=b*c,f=Ah[e];void 0===f&&(f=new Float32Array(e),
|
|
|
-Ah[e]=f);if(0!==b)for(d.toArray(f,0),d=1,e=0;d!==b;++d)e+=c,a[d].toArray(f,e);return f}function Oa(a,b){if(a.length!==b.length)return!1;for(var c=0,d=a.length;c<d;c++)if(a[c]!==b[c])return!1;return!0}function Ia(a,b){for(var c=0,d=b.length;c<d;c++)a[c]=b[c]}function Bh(a,b){var c=Ch[b];void 0===c&&(c=new Int32Array(b),Ch[b]=c);for(var d=0;d!==b;++d)c[d]=a.allocateTextureUnit();return c}function Fj(a,b){var c=this.cache;c[0]!==b&&(a.uniform1f(this.addr,b),c[0]=b)}function Gj(a,b){var c=this.cache;
|
|
|
+!1}function Hc(a,b,c,d){Z.call(this,null);this.image={data:a||null,width:b||1,height:c||1,depth:d||1};this.minFilter=this.magFilter=1003;this.wrapR=1001;this.flipY=this.generateMipmaps=!1;this.needsUpdate=!0}function Ic(a,b,c,d){Z.call(this,null);this.image={data:a||null,width:b||1,height:c||1,depth:d||1};this.minFilter=this.magFilter=1003;this.wrapR=1001;this.flipY=this.generateMipmaps=!1;this.needsUpdate=!0}function Jc(a,b,c){var d=a[0];if(0>=d||0<d)return a;var e=b*c,f=Bh[e];void 0===f&&(f=new Float32Array(e),
|
|
|
+Bh[e]=f);if(0!==b)for(d.toArray(f,0),d=1,e=0;d!==b;++d)e+=c,a[d].toArray(f,e);return f}function Oa(a,b){if(a.length!==b.length)return!1;for(var c=0,d=a.length;c<d;c++)if(a[c]!==b[c])return!1;return!0}function Ia(a,b){for(var c=0,d=b.length;c<d;c++)a[c]=b[c]}function Ch(a,b){var c=Dh[b];void 0===c&&(c=new Int32Array(b),Dh[b]=c);for(var d=0;d!==b;++d)c[d]=a.allocateTextureUnit();return c}function Fj(a,b){var c=this.cache;c[0]!==b&&(a.uniform1f(this.addr,b),c[0]=b)}function Gj(a,b){var c=this.cache;
|
|
|
if(void 0!==b.x){if(c[0]!==b.x||c[1]!==b.y)a.uniform2f(this.addr,b.x,b.y),c[0]=b.x,c[1]=b.y}else Oa(c,b)||(a.uniform2fv(this.addr,b),Ia(c,b))}function Hj(a,b){var c=this.cache;if(void 0!==b.x){if(c[0]!==b.x||c[1]!==b.y||c[2]!==b.z)a.uniform3f(this.addr,b.x,b.y,b.z),c[0]=b.x,c[1]=b.y,c[2]=b.z}else if(void 0!==b.r){if(c[0]!==b.r||c[1]!==b.g||c[2]!==b.b)a.uniform3f(this.addr,b.r,b.g,b.b),c[0]=b.r,c[1]=b.g,c[2]=b.b}else Oa(c,b)||(a.uniform3fv(this.addr,b),Ia(c,b))}function Ij(a,b){var c=this.cache;if(void 0!==
|
|
|
-b.x){if(c[0]!==b.x||c[1]!==b.y||c[2]!==b.z||c[3]!==b.w)a.uniform4f(this.addr,b.x,b.y,b.z,b.w),c[0]=b.x,c[1]=b.y,c[2]=b.z,c[3]=b.w}else Oa(c,b)||(a.uniform4fv(this.addr,b),Ia(c,b))}function Jj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix2fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Dh.set(d),a.uniformMatrix2fv(this.addr,!1,Dh),Ia(c,d))}function Kj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix3fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Eh.set(d),a.uniformMatrix3fv(this.addr,
|
|
|
-!1,Eh),Ia(c,d))}function Lj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix4fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Fh.set(d),a.uniformMatrix4fv(this.addr,!1,Fh),Ia(c,d))}function Mj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.safeSetTexture2D(b||Gh,e)}function Nj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.setTexture2DArray(b||Oj,e)}function Pj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();
|
|
|
-d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.setTexture3D(b||Qj,e)}function Rj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.safeSetTextureCube(b||Hh,e)}function Sj(a,b){var c=this.cache;c[0]!==b&&(a.uniform1i(this.addr,b),c[0]=b)}function Tj(a,b){var c=this.cache;Oa(c,b)||(a.uniform2iv(this.addr,b),Ia(c,b))}function Uj(a,b){var c=this.cache;Oa(c,b)||(a.uniform3iv(this.addr,b),Ia(c,b))}function Vj(a,b){var c=this.cache;Oa(c,b)||(a.uniform4iv(this.addr,
|
|
|
+b.x){if(c[0]!==b.x||c[1]!==b.y||c[2]!==b.z||c[3]!==b.w)a.uniform4f(this.addr,b.x,b.y,b.z,b.w),c[0]=b.x,c[1]=b.y,c[2]=b.z,c[3]=b.w}else Oa(c,b)||(a.uniform4fv(this.addr,b),Ia(c,b))}function Jj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix2fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Eh.set(d),a.uniformMatrix2fv(this.addr,!1,Eh),Ia(c,d))}function Kj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix3fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Fh.set(d),a.uniformMatrix3fv(this.addr,
|
|
|
+!1,Fh),Ia(c,d))}function Lj(a,b){var c=this.cache,d=b.elements;void 0===d?Oa(c,b)||(a.uniformMatrix4fv(this.addr,!1,b),Ia(c,b)):Oa(c,d)||(Gh.set(d),a.uniformMatrix4fv(this.addr,!1,Gh),Ia(c,d))}function Mj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.safeSetTexture2D(b||Hh,e)}function Nj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.setTexture2DArray(b||Oj,e)}function Pj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();
|
|
|
+d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.setTexture3D(b||Qj,e)}function Rj(a,b,c){var d=this.cache,e=c.allocateTextureUnit();d[0]!==e&&(a.uniform1i(this.addr,e),d[0]=e);c.safeSetTextureCube(b||Ih,e)}function Sj(a,b){var c=this.cache;c[0]!==b&&(a.uniform1i(this.addr,b),c[0]=b)}function Tj(a,b){var c=this.cache;Oa(c,b)||(a.uniform2iv(this.addr,b),Ia(c,b))}function Uj(a,b){var c=this.cache;Oa(c,b)||(a.uniform3iv(this.addr,b),Ia(c,b))}function Vj(a,b){var c=this.cache;Oa(c,b)||(a.uniform4iv(this.addr,
|
|
|
b),Ia(c,b))}function Wj(a,b){var c=this.cache;c[0]!==b&&(a.uniform1ui(this.addr,b),c[0]=b)}function Xj(a){switch(a){case 5126:return Fj;case 35664:return Gj;case 35665:return Hj;case 35666:return Ij;case 35674:return Jj;case 35675:return Kj;case 35676:return Lj;case 5124:case 35670:return Sj;case 35667:case 35671:return Tj;case 35668:case 35672:return Uj;case 35669:case 35673:return Vj;case 5125:return Wj;case 35678:case 36198:case 36298:case 36306:case 35682:return Mj;case 35679:case 36299:case 36307:return Pj;
|
|
|
case 35680:case 36300:case 36308:case 36293:return Rj;case 36289:case 36303:case 36311:case 36292:return Nj}}function Yj(a,b){a.uniform1fv(this.addr,b)}function Zj(a,b){a.uniform1iv(this.addr,b)}function ak(a,b){a.uniform2iv(this.addr,b)}function bk(a,b){a.uniform3iv(this.addr,b)}function ck(a,b){a.uniform4iv(this.addr,b)}function dk(a,b){b=Jc(b,this.size,2);a.uniform2fv(this.addr,b)}function ek(a,b){b=Jc(b,this.size,3);a.uniform3fv(this.addr,b)}function fk(a,b){b=Jc(b,this.size,4);a.uniform4fv(this.addr,
|
|
|
-b)}function gk(a,b){b=Jc(b,this.size,4);a.uniformMatrix2fv(this.addr,!1,b)}function hk(a,b){b=Jc(b,this.size,9);a.uniformMatrix3fv(this.addr,!1,b)}function ik(a,b){b=Jc(b,this.size,16);a.uniformMatrix4fv(this.addr,!1,b)}function jk(a,b,c){var d=b.length,e=Bh(c,d);a.uniform1iv(this.addr,e);for(a=0;a!==d;++a)c.safeSetTexture2D(b[a]||Gh,e[a])}function kk(a,b,c){var d=b.length,e=Bh(c,d);a.uniform1iv(this.addr,e);for(a=0;a!==d;++a)c.safeSetTextureCube(b[a]||Hh,e[a])}function lk(a){switch(a){case 5126:return Yj;
|
|
|
-case 35664:return dk;case 35665:return ek;case 35666:return fk;case 35674:return gk;case 35675:return hk;case 35676:return ik;case 5124:case 35670:return Zj;case 35667:case 35671:return ak;case 35668:case 35672:return bk;case 35669:case 35673:return ck;case 35678:case 36198:case 36298:case 36306:case 35682:return jk;case 35680:case 36300:case 36308:case 36293:return kk}}function mk(a,b,c){this.id=a;this.addr=c;this.cache=[];this.setValue=Xj(b.type)}function Ih(a,b,c){this.id=a;this.addr=c;this.cache=
|
|
|
-[];this.size=b.size;this.setValue=lk(b.type)}function Jh(a){this.id=a;this.seq=[];this.map={}}function Db(a,b){this.seq=[];this.map={};for(var c=a.getProgramParameter(b,35718),d=0;d<c;++d){var e=a.getActiveUniform(b,d),f=a.getUniformLocation(b,e.name),g=this,k=e.name,l=k.length;for(hg.lastIndex=0;;){var m=hg.exec(k),x=hg.lastIndex,p=m[1],h=m[3];"]"===m[2]&&(p|=0);if(void 0===h||"["===h&&x+2===l){k=g;e=void 0===h?new mk(p,e,f):new Ih(p,e,f);k.seq.push(e);k.map[e.id]=e;break}else h=g.map[p],void 0===
|
|
|
-h&&(h=new Jh(p),p=g,g=h,p.seq.push(g),p.map[g.id]=g),g=h}}}function Kh(a,b,c){b=a.createShader(b);a.shaderSource(b,c);a.compileShader(b);return b}function Lh(a){switch(a){case 3E3:return["Linear","( value )"];case 3001:return["sRGB","( value )"];case 3002:return["RGBE","( value )"];case 3004:return["RGBM","( value, 7.0 )"];case 3005:return["RGBM","( value, 16.0 )"];case 3006:return["RGBD","( value, 256.0 )"];case 3007:return["Gamma","( value, float( GAMMA_FACTOR ) )"];case 3003:return["LogLuv","( value )"];
|
|
|
-default:throw Error("unsupported encoding: "+a);}}function Mh(a,b,c){var d=a.getShaderParameter(b,35713),e=a.getShaderInfoLog(b).trim();if(d&&""===e)return"";a=a.getShaderSource(b).split("\n");for(b=0;b<a.length;b++)a[b]=b+1+": "+a[b];a=a.join("\n");return"THREE.WebGLShader: gl.getShaderInfoLog() "+c+"\n"+e+a}function Jd(a,b){b=Lh(b);return"vec4 "+a+"( vec4 value ) { return "+b[0]+"ToLinear"+b[1]+"; }"}function nk(a,b){b=Lh(b);return"vec4 "+a+"( vec4 value ) { return LinearTo"+b[0]+b[1]+"; }"}function ok(a,
|
|
|
-b){switch(b){case 1:b="Linear";break;case 2:b="Reinhard";break;case 3:b="Uncharted2";break;case 4:b="OptimizedCineon";break;case 5:b="ACESFilmic";break;default:throw Error("unsupported toneMapping: "+b);}return"vec3 "+a+"( vec3 color ) { return "+b+"ToneMapping( color ); }"}function pk(a){var b=[],c;for(c in a){var d=a[c];!1!==d&&b.push("#define "+c+" "+d)}return b.join("\n")}function Kd(a){return""!==a}function Nh(a,b){return a.replace(/NUM_DIR_LIGHTS/g,b.numDirLights).replace(/NUM_SPOT_LIGHTS/g,
|
|
|
-b.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,b.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,b.numPointLights).replace(/NUM_HEMI_LIGHTS/g,b.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,b.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,b.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,b.numPointLightShadows)}function Oh(a,b){return a.replace(/NUM_CLIPPING_PLANES/g,b.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,b.numClippingPlanes-b.numClipIntersection)}function ig(a,b){a=
|
|
|
-O[b];if(void 0===a)throw Error("Can not resolve #include <"+b+">");return a.replace(jg,ig)}function Ph(a,b,c,d){a="";for(b=parseInt(b);b<parseInt(c);b++)a+=d.replace(/\[ i \]/g,"[ "+b+" ]").replace(/UNROLLED_LOOP_INDEX/g,b);return a}function Qh(a){var b="precision "+a.precision+" float;\nprecision "+a.precision+" int;";"highp"===a.precision?b+="\n#define HIGH_PRECISION":"mediump"===a.precision?b+="\n#define MEDIUM_PRECISION":"lowp"===a.precision&&(b+="\n#define LOW_PRECISION");return b}function qk(a){var b=
|
|
|
+b)}function gk(a,b){b=Jc(b,this.size,4);a.uniformMatrix2fv(this.addr,!1,b)}function hk(a,b){b=Jc(b,this.size,9);a.uniformMatrix3fv(this.addr,!1,b)}function ik(a,b){b=Jc(b,this.size,16);a.uniformMatrix4fv(this.addr,!1,b)}function jk(a,b,c){var d=b.length,e=Ch(c,d);a.uniform1iv(this.addr,e);for(a=0;a!==d;++a)c.safeSetTexture2D(b[a]||Hh,e[a])}function kk(a,b,c){var d=b.length,e=Ch(c,d);a.uniform1iv(this.addr,e);for(a=0;a!==d;++a)c.safeSetTextureCube(b[a]||Ih,e[a])}function lk(a){switch(a){case 5126:return Yj;
|
|
|
+case 35664:return dk;case 35665:return ek;case 35666:return fk;case 35674:return gk;case 35675:return hk;case 35676:return ik;case 5124:case 35670:return Zj;case 35667:case 35671:return ak;case 35668:case 35672:return bk;case 35669:case 35673:return ck;case 35678:case 36198:case 36298:case 36306:case 35682:return jk;case 35680:case 36300:case 36308:case 36293:return kk}}function mk(a,b,c){this.id=a;this.addr=c;this.cache=[];this.setValue=Xj(b.type)}function Jh(a,b,c){this.id=a;this.addr=c;this.cache=
|
|
|
+[];this.size=b.size;this.setValue=lk(b.type)}function Kh(a){this.id=a;this.seq=[];this.map={}}function Db(a,b){this.seq=[];this.map={};for(var c=a.getProgramParameter(b,35718),d=0;d<c;++d){var e=a.getActiveUniform(b,d),f=a.getUniformLocation(b,e.name),g=this,k=e.name,l=k.length;for(hg.lastIndex=0;;){var m=hg.exec(k),x=hg.lastIndex,p=m[1],h=m[3];"]"===m[2]&&(p|=0);if(void 0===h||"["===h&&x+2===l){k=g;e=void 0===h?new mk(p,e,f):new Jh(p,e,f);k.seq.push(e);k.map[e.id]=e;break}else h=g.map[p],void 0===
|
|
|
+h&&(h=new Kh(p),p=g,g=h,p.seq.push(g),p.map[g.id]=g),g=h}}}function Lh(a,b,c){b=a.createShader(b);a.shaderSource(b,c);a.compileShader(b);return b}function Mh(a){switch(a){case 3E3:return["Linear","( value )"];case 3001:return["sRGB","( value )"];case 3002:return["RGBE","( value )"];case 3004:return["RGBM","( value, 7.0 )"];case 3005:return["RGBM","( value, 16.0 )"];case 3006:return["RGBD","( value, 256.0 )"];case 3007:return["Gamma","( value, float( GAMMA_FACTOR ) )"];case 3003:return["LogLuv","( value )"];
|
|
|
+default:throw Error("unsupported encoding: "+a);}}function Nh(a,b,c){var d=a.getShaderParameter(b,35713),e=a.getShaderInfoLog(b).trim();if(d&&""===e)return"";a=a.getShaderSource(b).split("\n");for(b=0;b<a.length;b++)a[b]=b+1+": "+a[b];a=a.join("\n");return"THREE.WebGLShader: gl.getShaderInfoLog() "+c+"\n"+e+a}function Jd(a,b){b=Mh(b);return"vec4 "+a+"( vec4 value ) { return "+b[0]+"ToLinear"+b[1]+"; }"}function nk(a,b){b=Mh(b);return"vec4 "+a+"( vec4 value ) { return LinearTo"+b[0]+b[1]+"; }"}function ok(a,
|
|
|
+b){switch(b){case 1:b="Linear";break;case 2:b="Reinhard";break;case 3:b="Uncharted2";break;case 4:b="OptimizedCineon";break;case 5:b="ACESFilmic";break;default:throw Error("unsupported toneMapping: "+b);}return"vec3 "+a+"( vec3 color ) { return "+b+"ToneMapping( color ); }"}function pk(a){var b=[],c;for(c in a){var d=a[c];!1!==d&&b.push("#define "+c+" "+d)}return b.join("\n")}function Kd(a){return""!==a}function Oh(a,b){return a.replace(/NUM_DIR_LIGHTS/g,b.numDirLights).replace(/NUM_SPOT_LIGHTS/g,
|
|
|
+b.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,b.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,b.numPointLights).replace(/NUM_HEMI_LIGHTS/g,b.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,b.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,b.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,b.numPointLightShadows)}function Ph(a,b){return a.replace(/NUM_CLIPPING_PLANES/g,b.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,b.numClippingPlanes-b.numClipIntersection)}function ig(a,b){a=
|
|
|
+O[b];if(void 0===a)throw Error("Can not resolve #include <"+b+">");return a.replace(jg,ig)}function Qh(a,b,c,d){a="";for(b=parseInt(b);b<parseInt(c);b++)a+=d.replace(/\[ i \]/g,"[ "+b+" ]").replace(/UNROLLED_LOOP_INDEX/g,b);return a}function Rh(a){var b="precision "+a.precision+" float;\nprecision "+a.precision+" int;";"highp"===a.precision?b+="\n#define HIGH_PRECISION":"mediump"===a.precision?b+="\n#define MEDIUM_PRECISION":"lowp"===a.precision&&(b+="\n#define LOW_PRECISION");return b}function qk(a){var b=
|
|
|
"SHADOWMAP_TYPE_BASIC";1===a.shadowMapType?b="SHADOWMAP_TYPE_PCF":2===a.shadowMapType?b="SHADOWMAP_TYPE_PCF_SOFT":3===a.shadowMapType&&(b="SHADOWMAP_TYPE_VSM");return b}function rk(a){var b="ENVMAP_TYPE_CUBE";if(a.envMap)switch(a.envMapMode){case 301:case 302:b="ENVMAP_TYPE_CUBE";break;case 306:case 307:b="ENVMAP_TYPE_CUBE_UV";break;case 303:case 304:b="ENVMAP_TYPE_EQUIREC";break;case 305:b="ENVMAP_TYPE_SPHERE"}return b}function sk(a){var b="ENVMAP_MODE_REFLECTION";if(a.envMap)switch(a.envMapMode){case 302:case 304:b=
|
|
|
"ENVMAP_MODE_REFRACTION"}return b}function tk(a){var b="ENVMAP_BLENDING_NONE";if(a.envMap)switch(a.combine){case 0:b="ENVMAP_BLENDING_MULTIPLY";break;case 1:b="ENVMAP_BLENDING_MIX";break;case 2:b="ENVMAP_BLENDING_ADD"}return b}function uk(a,b,c){var d=a.getContext(),e=c.defines,f=c.vertexShader,g=c.fragmentShader,k=qk(c),l=rk(c),m=sk(c),x=tk(c),p=0<a.gammaFactor?a.gammaFactor:1,h=c.isWebGL2?"":[c.extensionDerivatives||c.envMapCubeUV||c.bumpMap||c.tangentSpaceNormalMap||c.clearcoatNormalMap||c.flatShading||
|
|
|
"physical"===c.shaderID?"#extension GL_OES_standard_derivatives : enable":"",(c.extensionFragDepth||c.logarithmicDepthBuffer)&&c.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",c.extensionDrawBuffers&&c.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(c.extensionShaderTextureLOD||c.envMap)&&c.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(Kd).join("\n"),t=pk(e),r=d.createProgram(),u=c.numMultiviewViews;
|
|
|
-c.isRawShaderMaterial?(e=[t].filter(Kd).join("\n"),0<e.length&&(e+="\n"),k=[h,t].filter(Kd).join("\n"),0<k.length&&(k+="\n")):(e=[Qh(c),"#define SHADER_NAME "+c.shaderName,t,c.instancing?"#define USE_INSTANCING":"",c.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+p,"#define MAX_BONES "+c.maxBones,c.useFog&&c.fog?"#define USE_FOG":"",c.useFog&&c.fogExp2?"#define FOG_EXP2":"",c.map?"#define USE_MAP":"",c.envMap?"#define USE_ENVMAP":"",c.envMap?"#define "+m:"",c.lightMap?
|
|
|
+c.isRawShaderMaterial?(e=[t].filter(Kd).join("\n"),0<e.length&&(e+="\n"),k=[h,t].filter(Kd).join("\n"),0<k.length&&(k+="\n")):(e=[Rh(c),"#define SHADER_NAME "+c.shaderName,t,c.instancing?"#define USE_INSTANCING":"",c.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+p,"#define MAX_BONES "+c.maxBones,c.useFog&&c.fog?"#define USE_FOG":"",c.useFog&&c.fogExp2?"#define FOG_EXP2":"",c.map?"#define USE_MAP":"",c.envMap?"#define USE_ENVMAP":"",c.envMap?"#define "+m:"",c.lightMap?
|
|
|
"#define USE_LIGHTMAP":"",c.aoMap?"#define USE_AOMAP":"",c.emissiveMap?"#define USE_EMISSIVEMAP":"",c.bumpMap?"#define USE_BUMPMAP":"",c.normalMap?"#define USE_NORMALMAP":"",c.normalMap&&c.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",c.normalMap&&c.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",c.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",c.displacementMap&&c.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",c.specularMap?"#define USE_SPECULARMAP":"",c.roughnessMap?
|
|
|
"#define USE_ROUGHNESSMAP":"",c.metalnessMap?"#define USE_METALNESSMAP":"",c.alphaMap?"#define USE_ALPHAMAP":"",c.vertexTangents?"#define USE_TANGENT":"",c.vertexColors?"#define USE_COLOR":"",c.vertexUvs?"#define USE_UV":"",c.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",c.flatShading?"#define FLAT_SHADED":"",c.skinning?"#define USE_SKINNING":"",c.useVertexTexture?"#define BONE_TEXTURE":"",c.morphTargets?"#define USE_MORPHTARGETS":"",c.morphNormals&&!1===c.flatShading?"#define USE_MORPHNORMALS":"",c.doubleSided?
|
|
|
"#define DOUBLE_SIDED":"",c.flipSided?"#define FLIP_SIDED":"",c.shadowMapEnabled?"#define USE_SHADOWMAP":"",c.shadowMapEnabled?"#define "+k:"",c.sizeAttenuation?"#define USE_SIZEATTENUATION":"",c.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",c.logarithmicDepthBuffer&&c.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;",
|
|
|
"uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#ifdef USE_COLOR","\tattribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;",
|
|
|
-"\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(Kd).join("\n"),k=[h,Qh(c),"#define SHADER_NAME "+c.shaderName,t,c.alphaTest?"#define ALPHATEST "+c.alphaTest+(c.alphaTest%
|
|
|
+"\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(Kd).join("\n"),k=[h,Rh(c),"#define SHADER_NAME "+c.shaderName,t,c.alphaTest?"#define ALPHATEST "+c.alphaTest+(c.alphaTest%
|
|
|
1?"":".0"):"","#define GAMMA_FACTOR "+p,c.useFog&&c.fog?"#define USE_FOG":"",c.useFog&&c.fogExp2?"#define FOG_EXP2":"",c.map?"#define USE_MAP":"",c.matcap?"#define USE_MATCAP":"",c.envMap?"#define USE_ENVMAP":"",c.envMap?"#define "+l:"",c.envMap?"#define "+m:"",c.envMap?"#define "+x:"",c.lightMap?"#define USE_LIGHTMAP":"",c.aoMap?"#define USE_AOMAP":"",c.emissiveMap?"#define USE_EMISSIVEMAP":"",c.bumpMap?"#define USE_BUMPMAP":"",c.normalMap?"#define USE_NORMALMAP":"",c.normalMap&&c.objectSpaceNormalMap?
|
|
|
"#define OBJECTSPACE_NORMALMAP":"",c.normalMap&&c.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",c.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",c.specularMap?"#define USE_SPECULARMAP":"",c.roughnessMap?"#define USE_ROUGHNESSMAP":"",c.metalnessMap?"#define USE_METALNESSMAP":"",c.alphaMap?"#define USE_ALPHAMAP":"",c.sheen?"#define USE_SHEEN":"",c.vertexTangents?"#define USE_TANGENT":"",c.vertexColors?"#define USE_COLOR":"",c.vertexUvs?"#define USE_UV":"",c.uvsVertexOnly?"#define UVS_VERTEX_ONLY":
|
|
|
"",c.gradientMap?"#define USE_GRADIENTMAP":"",c.flatShading?"#define FLAT_SHADED":"",c.doubleSided?"#define DOUBLE_SIDED":"",c.flipSided?"#define FLIP_SIDED":"",c.shadowMapEnabled?"#define USE_SHADOWMAP":"",c.shadowMapEnabled?"#define "+k:"",c.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",c.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",c.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",c.logarithmicDepthBuffer&&c.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"",
|
|
|
(c.extensionShaderTextureLOD||c.envMap)&&c.rendererExtensionShaderTextureLod?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",0!==c.toneMapping?"#define TONE_MAPPING":"",0!==c.toneMapping?O.tonemapping_pars_fragment:"",0!==c.toneMapping?ok("toneMapping",c.toneMapping):"",c.dithering?"#define DITHERING":"",c.transparent?"#define TRANSPARENT":"",c.outputEncoding||c.mapEncoding||c.matcapEncoding||c.envMapEncoding||c.emissiveMapEncoding||
|
|
|
c.lightMapEncoding?O.encodings_pars_fragment:"",c.mapEncoding?Jd("mapTexelToLinear",c.mapEncoding):"",c.matcapEncoding?Jd("matcapTexelToLinear",c.matcapEncoding):"",c.envMapEncoding?Jd("envMapTexelToLinear",c.envMapEncoding):"",c.emissiveMapEncoding?Jd("emissiveMapTexelToLinear",c.emissiveMapEncoding):"",c.lightMapEncoding?Jd("lightMapTexelToLinear",c.lightMapEncoding):"",c.outputEncoding?nk("linearToOutputTexel",c.outputEncoding):"",c.depthPacking?"#define DEPTH_PACKING "+c.depthPacking:"","\n"].filter(Kd).join("\n"));
|
|
|
-f=f.replace(jg,ig);f=Nh(f,c);f=Oh(f,c);g=g.replace(jg,ig);g=Nh(g,c);g=Oh(g,c);f=f.replace(Rh,Ph);g=g.replace(Rh,Ph);c.isWebGL2&&!c.isRawShaderMaterial&&(l=!1,m=/^\s*#version\s+300\s+es\s*\n/,c.isShaderMaterial&&null!==f.match(m)&&null!==g.match(m)&&(l=!0,f=f.replace(m,""),g=g.replace(m,"")),e="#version 300 es\n\n#define attribute in\n#define varying out\n#define texture2D texture\n"+e,k=["#version 300 es\n\n#define varying in",l?"":"out highp vec4 pc_fragColor;",l?"":"#define gl_FragColor pc_fragColor",
|
|
|
+f=f.replace(jg,ig);f=Oh(f,c);f=Ph(f,c);g=g.replace(jg,ig);g=Oh(g,c);g=Ph(g,c);f=f.replace(Sh,Qh);g=g.replace(Sh,Qh);c.isWebGL2&&!c.isRawShaderMaterial&&(l=!1,m=/^\s*#version\s+300\s+es\s*\n/,c.isShaderMaterial&&null!==f.match(m)&&null!==g.match(m)&&(l=!0,f=f.replace(m,""),g=g.replace(m,"")),e="#version 300 es\n\n#define attribute in\n#define varying out\n#define texture2D texture\n"+e,k=["#version 300 es\n\n#define varying in",l?"":"out highp vec4 pc_fragColor;",l?"":"#define gl_FragColor pc_fragColor",
|
|
|
"#define gl_FragDepthEXT gl_FragDepth\n#define texture2D texture\n#define textureCube texture\n#define texture2DProj textureProj\n#define texture2DLodEXT textureLod\n#define texture2DProjLodEXT textureProjLod\n#define textureCubeLodEXT textureLod\n#define texture2DGradEXT textureGrad\n#define texture2DProjGradEXT textureProjGrad\n#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+k,0<u&&(e=e.replace("#version 300 es\n",["#version 300 es\n\n#extension GL_OVR_multiview2 : require","layout(num_views = "+
|
|
|
u+") in;","#define VIEW_ID gl_ViewID_OVR"].join("\n")),e=e.replace("uniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\nuniform mat4 viewMatrix;\nuniform mat3 normalMatrix;",["uniform mat4 modelViewMatrices["+u+"];","uniform mat4 projectionMatrices["+u+"];","uniform mat4 viewMatrices["+u+"];","uniform mat3 normalMatrices["+u+"];","#define modelViewMatrix modelViewMatrices[VIEW_ID]\n#define projectionMatrix projectionMatrices[VIEW_ID]\n#define viewMatrix viewMatrices[VIEW_ID]\n#define normalMatrix normalMatrices[VIEW_ID]"].join("\n")),
|
|
|
-k=k.replace("#version 300 es\n","#version 300 es\n\n#extension GL_OVR_multiview2 : require\n#define VIEW_ID gl_ViewID_OVR"),k=k.replace("uniform mat4 viewMatrix;",["uniform mat4 viewMatrices["+u+"];","#define viewMatrix viewMatrices[VIEW_ID]"].join("\n"))));g=k+g;f=Kh(d,35633,e+f);g=Kh(d,35632,g);d.attachShader(r,f);d.attachShader(r,g);void 0!==c.index0AttributeName?d.bindAttribLocation(r,0,c.index0AttributeName):!0===c.morphTargets&&d.bindAttribLocation(r,0,"position");d.linkProgram(r);if(a.debug.checkShaderErrors){a=
|
|
|
-d.getProgramInfoLog(r).trim();l=d.getShaderInfoLog(f).trim();m=d.getShaderInfoLog(g).trim();p=x=!0;if(!1===d.getProgramParameter(r,35714))x=!1,h=Mh(d,f,"vertex"),t=Mh(d,g,"fragment"),console.error("THREE.WebGLProgram: shader error: ",d.getError(),"35715",d.getProgramParameter(r,35715),"gl.getProgramInfoLog",a,h,t);else if(""!==a)console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",a);else if(""===l||""===m)p=!1;p&&(this.diagnostics={runnable:x,programLog:a,vertexShader:{log:l,prefix:e},fragmentShader:{log:m,
|
|
|
+k=k.replace("#version 300 es\n","#version 300 es\n\n#extension GL_OVR_multiview2 : require\n#define VIEW_ID gl_ViewID_OVR"),k=k.replace("uniform mat4 viewMatrix;",["uniform mat4 viewMatrices["+u+"];","#define viewMatrix viewMatrices[VIEW_ID]"].join("\n"))));g=k+g;f=Lh(d,35633,e+f);g=Lh(d,35632,g);d.attachShader(r,f);d.attachShader(r,g);void 0!==c.index0AttributeName?d.bindAttribLocation(r,0,c.index0AttributeName):!0===c.morphTargets&&d.bindAttribLocation(r,0,"position");d.linkProgram(r);if(a.debug.checkShaderErrors){a=
|
|
|
+d.getProgramInfoLog(r).trim();l=d.getShaderInfoLog(f).trim();m=d.getShaderInfoLog(g).trim();p=x=!0;if(!1===d.getProgramParameter(r,35714))x=!1,h=Nh(d,f,"vertex"),t=Nh(d,g,"fragment"),console.error("THREE.WebGLProgram: shader error: ",d.getError(),"35715",d.getProgramParameter(r,35715),"gl.getProgramInfoLog",a,h,t);else if(""!==a)console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",a);else if(""===l||""===m)p=!1;p&&(this.diagnostics={runnable:x,programLog:a,vertexShader:{log:l,prefix:e},fragmentShader:{log:m,
|
|
|
prefix:k}})}d.detachShader(r,f);d.detachShader(r,g);d.deleteShader(f);d.deleteShader(g);var n;this.getUniforms=function(){void 0===n&&(n=new Db(d,r));return n};var w;this.getAttributes=function(){if(void 0===w){for(var a={},b=d.getProgramParameter(r,35721),c=0;c<b;c++){var e=d.getActiveAttrib(r,c).name;a[e]=d.getAttribLocation(r,e)}w=a}return w};this.destroy=function(){d.deleteProgram(r);this.program=void 0};this.name=c.shaderName;this.id=vk++;this.cacheKey=b;this.usedTimes=1;this.program=r;this.vertexShader=
|
|
|
f;this.fragmentShader=g;this.numMultiviewViews=u;return this}function wk(a,b,c){function d(a){if(a)a.isTexture?b=a.encoding:a.isWebGLRenderTarget&&(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),b=a.texture.encoding);else var b=3E3;return b}var e=[],f=c.isWebGL2,g=c.logarithmicDepthBuffer,k=c.floatVertexTextures,l=c.precision,m=c.maxVertexUniforms,x=c.vertexTextures,p={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",
|
|
|
MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"},h="precision isWebGL2 supportsVertexTextures outputEncoding instancing numMultiviewViews map mapEncoding matcap matcapEncoding envMap envMapMode envMapEncoding envMapCubeUV lightMap lightMapEncoding aoMap emissiveMap emissiveMapEncoding bumpMap normalMap objectSpaceNormalMap tangentSpaceNormalMap clearcoatNormalMap displacementMap specularMap roughnessMap metalnessMap gradientMap alphaMap combine vertexColors vertexTangents vertexUvs uvsVertexOnly fog useFog fogExp2 flatShading sizeAttenuation logarithmicDepthBuffer skinning maxBones useVertexTexture morphTargets morphNormals maxMorphTargets maxMorphNormals premultipliedAlpha numDirLights numPointLights numSpotLights numHemiLights numRectAreaLights numDirLightShadows numPointLightShadows numSpotLightShadows shadowMapEnabled shadowMapType toneMapping physicallyCorrectLights alphaTest doubleSided flipSided numClippingPlanes numClipIntersection depthPacking dithering sheen transparent".split(" ");
|
|
|
this.getParameters=function(e,h,q,n,w,D,da){var r=n.fog;n=e.isMeshStandardMaterial?n.environment:null;n=e.envMap||n;var t=p[e.type];if(da.isSkinnedMesh){var u=da.skeleton.bones;if(k)u=1024;else{var y=Math.min(Math.floor((m-20)/4),u.length);y<u.length?(console.warn("THREE.WebGLRenderer: Skeleton has "+u.length+" bones. This GPU supports "+y+"."),u=0):u=y}}else u=0;null!==e.precision&&(l=c.getMaxPrecision(e.precision),l!==e.precision&&console.warn("THREE.WebGLProgram.getParameters:",e.precision,"not supported, using",
|
|
|
-l,"instead."));t?(y=db[t],y={name:e.type,uniforms:Sh.clone(y.uniforms),vertexShader:y.vertexShader,fragmentShader:y.fragmentShader}):y={name:e.type,uniforms:e.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader};e.onBeforeCompile(y,a);var Fa=a.getRenderTarget();return{isWebGL2:f,shaderID:t,shaderName:y.name,uniforms:y.uniforms,vertexShader:y.vertexShader,fragmentShader:y.fragmentShader,defines:e.defines,isRawShaderMaterial:e.isRawShaderMaterial,isShaderMaterial:e.isShaderMaterial,
|
|
|
+l,"instead."));t?(y=db[t],y={name:e.type,uniforms:Th.clone(y.uniforms),vertexShader:y.vertexShader,fragmentShader:y.fragmentShader}):y={name:e.type,uniforms:e.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader};e.onBeforeCompile(y,a);var Fa=a.getRenderTarget();return{isWebGL2:f,shaderID:t,shaderName:y.name,uniforms:y.uniforms,vertexShader:y.vertexShader,fragmentShader:y.fragmentShader,defines:e.defines,isRawShaderMaterial:e.isRawShaderMaterial,isShaderMaterial:e.isShaderMaterial,
|
|
|
precision:l,instancing:!0===da.isInstancedMesh,supportsVertexTextures:x,numMultiviewViews:Fa&&Fa.isWebGLMultiviewRenderTarget?Fa.numViews:0,outputEncoding:null!==Fa?d(Fa.texture):a.outputEncoding,map:!!e.map,mapEncoding:d(e.map),matcap:!!e.matcap,matcapEncoding:d(e.matcap),envMap:!!n,envMapMode:n&&n.mapping,envMapEncoding:d(n),envMapCubeUV:!!n&&(306===n.mapping||307===n.mapping),lightMap:!!e.lightMap,lightMapEncoding:d(e.lightMap),aoMap:!!e.aoMap,emissiveMap:!!e.emissiveMap,emissiveMapEncoding:d(e.emissiveMap),
|
|
|
bumpMap:!!e.bumpMap,normalMap:!!e.normalMap,objectSpaceNormalMap:1===e.normalMapType,tangentSpaceNormalMap:0===e.normalMapType,clearcoatNormalMap:!!e.clearcoatNormalMap,displacementMap:!!e.displacementMap,roughnessMap:!!e.roughnessMap,metalnessMap:!!e.metalnessMap,specularMap:!!e.specularMap,alphaMap:!!e.alphaMap,gradientMap:!!e.gradientMap,sheen:!!e.sheen,combine:e.combine,vertexTangents:e.normalMap&&e.vertexTangents,vertexColors:e.vertexColors,vertexUvs:!!e.map||!!e.bumpMap||!!e.normalMap||!!e.specularMap||
|
|
|
!!e.alphaMap||!!e.emissiveMap||!!e.roughnessMap||!!e.metalnessMap||!!e.clearcoatNormalMap||!!e.displacementMap,uvsVertexOnly:!(e.map||e.bumpMap||e.normalMap||e.specularMap||e.alphaMap||e.emissiveMap||e.roughnessMap||e.metalnessMap||e.clearcoatNormalMap)&&!!e.displacementMap,fog:!!r,useFog:e.fog,fogExp2:r&&r.isFogExp2,flatShading:e.flatShading,sizeAttenuation:e.sizeAttenuation,logarithmicDepthBuffer:g,skinning:e.skinning&&0<u,maxBones:u,useVertexTexture:k,morphTargets:e.morphTargets,morphNormals:e.morphNormals,
|
|
@@ -95,9 +95,9 @@ toneMapping:e.toneMapped?a.toneMapping:0,physicallyCorrectLights:a.physicallyCor
|
|
|
e.extensions.shaderTextureLOD,rendererExtensionFragDepth:f||null!==b.get("EXT_frag_depth"),rendererExtensionDrawBuffers:f||null!==b.get("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:f||null!==b.get("EXT_shader_texture_lod"),onBeforeCompile:e.onBeforeCompile}};this.getProgramCacheKey=function(b){var c=[];b.shaderID?c.push(b.shaderID):(c.push(b.fragmentShader),c.push(b.vertexShader));if(void 0!==b.defines)for(var d in b.defines)c.push(d),c.push(b.defines[d]);if(void 0===b.isRawShaderMaterial){for(d=
|
|
|
0;d<h.length;d++)c.push(b[h[d]]);c.push(a.outputEncoding);c.push(a.gammaFactor)}c.push(b.onBeforeCompile.toString());return c.join()};this.acquireProgram=function(b,c){for(var d,f=0,g=e.length;f<g;f++){var k=e[f];if(k.cacheKey===c){d=k;++d.usedTimes;break}}void 0===d&&(d=new uk(a,c,b),e.push(d));return d};this.releaseProgram=function(a){if(0===--a.usedTimes){var b=e.indexOf(a);e[b]=e[e.length-1];e.pop();a.destroy()}};this.programs=e}function xk(){var a=new WeakMap;return{get:function(b){var c=a.get(b);
|
|
|
void 0===c&&(c={},a.set(b,c));return c},remove:function(b){a.delete(b)},update:function(b,c,d){a.get(b)[c]=d},dispose:function(){a=new WeakMap}}}function yk(a,b){return a.groupOrder!==b.groupOrder?a.groupOrder-b.groupOrder:a.renderOrder!==b.renderOrder?a.renderOrder-b.renderOrder:a.program!==b.program?a.program.id-b.program.id:a.material.id!==b.material.id?a.material.id-b.material.id:a.z!==b.z?a.z-b.z:a.id-b.id}function zk(a,b){return a.groupOrder!==b.groupOrder?a.groupOrder-b.groupOrder:a.renderOrder!==
|
|
|
-b.renderOrder?a.renderOrder-b.renderOrder:a.z!==b.z?b.z-a.z:a.id-b.id}function Th(){function a(a,d,e,m,x,p){var g=b[c];void 0===g?(g={id:a.id,object:a,geometry:d,material:e,program:e.program||f,groupOrder:m,renderOrder:a.renderOrder,z:x,group:p},b[c]=g):(g.id=a.id,g.object=a,g.geometry=d,g.material=e,g.program=e.program||f,g.groupOrder=m,g.renderOrder=a.renderOrder,g.z=x,g.group=p);c++;return g}var b=[],c=0,d=[],e=[],f={id:-1};return{opaque:d,transparent:e,init:function(){c=0;d.length=0;e.length=
|
|
|
+b.renderOrder?a.renderOrder-b.renderOrder:a.z!==b.z?b.z-a.z:a.id-b.id}function Uh(){function a(a,d,e,m,x,p){var g=b[c];void 0===g?(g={id:a.id,object:a,geometry:d,material:e,program:e.program||f,groupOrder:m,renderOrder:a.renderOrder,z:x,group:p},b[c]=g):(g.id=a.id,g.object=a,g.geometry=d,g.material=e,g.program=e.program||f,g.groupOrder=m,g.renderOrder=a.renderOrder,g.z=x,g.group=p);c++;return g}var b=[],c=0,d=[],e=[],f={id:-1};return{opaque:d,transparent:e,init:function(){c=0;d.length=0;e.length=
|
|
|
0},push:function(b,c,f,m,x,p){b=a(b,c,f,m,x,p);(!0===f.transparent?e:d).push(b)},unshift:function(b,c,f,m,x,p){b=a(b,c,f,m,x,p);(!0===f.transparent?e:d).unshift(b)},finish:function(){for(var a=c,d=b.length;a<d;a++){var e=b[a];if(null===e.id)break;e.id=null;e.object=null;e.geometry=null;e.material=null;e.program=null;e.group=null}},sort:function(a,b){1<d.length&&d.sort(a||yk);1<e.length&&e.sort(b||zk)}}}function Ak(){function a(c){c=c.target;c.removeEventListener("dispose",a);b.delete(c)}var b=new WeakMap;
|
|
|
-return{get:function(c,d){var e=b.get(c);if(void 0===e){var f=new Th;b.set(c,new WeakMap);b.get(c).set(d,f);c.addEventListener("dispose",a)}else f=e.get(d),void 0===f&&(f=new Th,e.set(d,f));return f},dispose:function(){b=new WeakMap}}}function Bk(){var a={};return{get:function(b){if(void 0!==a[b.id])return a[b.id];switch(b.type){case "DirectionalLight":var c={direction:new n,color:new C,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new v};break;case "SpotLight":c={position:new n,direction:new n,
|
|
|
+return{get:function(c,d){var e=b.get(c);if(void 0===e){var f=new Uh;b.set(c,new WeakMap);b.get(c).set(d,f);c.addEventListener("dispose",a)}else f=e.get(d),void 0===f&&(f=new Uh,e.set(d,f));return f},dispose:function(){b=new WeakMap}}}function Bk(){var a={};return{get:function(b){if(void 0!==a[b.id])return a[b.id];switch(b.type){case "DirectionalLight":var c={direction:new n,color:new C,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new v};break;case "SpotLight":c={position:new n,direction:new n,
|
|
|
color:new C,distance:0,coneCos:0,penumbraCos:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new v};break;case "PointLight":c={position:new n,color:new C,distance:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new v,shadowCameraNear:1,shadowCameraFar:1E3};break;case "HemisphereLight":c={direction:new n,skyColor:new C,groundColor:new C};break;case "RectAreaLight":c={color:new C,position:new n,halfWidth:new n,halfHeight:new n}}return a[b.id]=c}}}function Ck(a,b){return(b.castShadow?
|
|
|
1:0)-(a.castShadow?1:0)}function Dk(){for(var a=new Bk,b={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],point:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]},c=0;9>c;c++)b.probe.push(new n);var d=new n,e=new P,f=new P;return{setup:function(c,
|
|
|
k,l){for(var g=0,x=0,p=0,h=0;9>h;h++)b.probe[h].set(0,0,0);var t=k=0,r=0,u=0,n=0,w=0,D=0,da=0;l=l.matrixWorldInverse;c.sort(Ck);h=0;for(var X=c.length;h<X;h++){var z=c[h],ra=z.color,v=z.intensity,Fa=z.distance,qa=z.shadow&&z.shadow.map?z.shadow.map.texture:null;if(z.isAmbientLight)g+=ra.r*v,x+=ra.g*v,p+=ra.b*v;else if(z.isLightProbe)for(qa=0;9>qa;qa++)b.probe[qa].addScaledVector(z.sh.coefficients[qa],v);else if(z.isDirectionalLight){var F=a.get(z);F.color.copy(z.color).multiplyScalar(z.intensity);
|
|
@@ -106,9 +106,9 @@ Fa;F.direction.setFromMatrixPosition(z.matrixWorld);d.setFromMatrixPosition(z.ta
|
|
|
F.position.setFromMatrixPosition(z.matrixWorld),F.position.applyMatrix4(l),f.identity(),e.copy(z.matrixWorld),e.premultiply(l),f.extractRotation(e),F.halfWidth.set(.5*z.width,0,0),F.halfHeight.set(0,.5*z.height,0),F.halfWidth.applyMatrix4(f),F.halfHeight.applyMatrix4(f),b.rectArea[u]=F,u++;else if(z.isPointLight){F=a.get(z);F.position.setFromMatrixPosition(z.matrixWorld);F.position.applyMatrix4(l);F.color.copy(z.color).multiplyScalar(z.intensity);F.distance=z.distance;F.decay=z.decay;if(F.shadow=
|
|
|
z.castShadow)v=z.shadow,F.shadowBias=v.bias,F.shadowRadius=v.radius,F.shadowMapSize=v.mapSize,F.shadowCameraNear=v.camera.near,F.shadowCameraFar=v.camera.far,b.pointShadowMap[t]=qa,b.pointShadowMatrix[t]=z.shadow.matrix,D++;b.point[t]=F;t++}else z.isHemisphereLight&&(F=a.get(z),F.direction.setFromMatrixPosition(z.matrixWorld),F.direction.transformDirection(l),F.direction.normalize(),F.skyColor.copy(z.color).multiplyScalar(v),F.groundColor.copy(z.groundColor).multiplyScalar(v),b.hemi[n]=F,n++)}b.ambient[0]=
|
|
|
g;b.ambient[1]=x;b.ambient[2]=p;c=b.hash;if(c.directionalLength!==k||c.pointLength!==t||c.spotLength!==r||c.rectAreaLength!==u||c.hemiLength!==n||c.numDirectionalShadows!==w||c.numPointShadows!==D||c.numSpotShadows!==da)b.directional.length=k,b.spot.length=r,b.rectArea.length=u,b.point.length=t,b.hemi.length=n,b.directionalShadowMap.length=w,b.pointShadowMap.length=D,b.spotShadowMap.length=da,b.directionalShadowMatrix.length=w,b.pointShadowMatrix.length=D,b.spotShadowMatrix.length=da,c.directionalLength=
|
|
|
-k,c.pointLength=t,c.spotLength=r,c.rectAreaLength=u,c.hemiLength=n,c.numDirectionalShadows=w,c.numPointShadows=D,c.numSpotShadows=da,b.version=Ek++},state:b}}function Uh(){var a=new Dk,b=[],c=[];return{init:function(){b.length=0;c.length=0},state:{lightsArray:b,shadowsArray:c,lights:a},setupLights:function(d){a.setup(b,c,d)},pushLight:function(a){b.push(a)},pushShadow:function(a){c.push(a)}}}function Fk(){function a(c){c=c.target;c.removeEventListener("dispose",a);b.delete(c)}var b=new WeakMap;return{get:function(c,
|
|
|
-d){if(!1===b.has(c)){var e=new Uh;b.set(c,new WeakMap);b.get(c).set(d,e);c.addEventListener("dispose",a)}else!1===b.get(c).has(d)?(e=new Uh,b.get(c).set(d,e)):e=b.get(c).get(d);return e},dispose:function(){b=new WeakMap}}}function Eb(a){K.call(this);this.type="MeshDepthMaterial";this.depthPacking=3200;this.morphTargets=this.skinning=!1;this.displacementMap=this.alphaMap=this.map=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=!1;this.wireframeLinewidth=1;this.fog=!1;this.setValues(a)}
|
|
|
-function Fb(a){K.call(this);this.type="MeshDistanceMaterial";this.referencePosition=new n;this.nearDistance=1;this.farDistance=1E3;this.morphTargets=this.skinning=!1;this.displacementMap=this.alphaMap=this.map=null;this.displacementScale=1;this.displacementBias=0;this.fog=!1;this.setValues(a)}function Vh(a,b,c){function d(a,b,c){c=a<<0|b<<1|c<<2;var d=p[c];void 0===d&&(d=new Eb({depthPacking:3201,morphTargets:a,skinning:b}),p[c]=d);return d}function e(a,b,c){c=a<<0|b<<1|c<<2;var d=h[c];void 0===d&&
|
|
|
+k,c.pointLength=t,c.spotLength=r,c.rectAreaLength=u,c.hemiLength=n,c.numDirectionalShadows=w,c.numPointShadows=D,c.numSpotShadows=da,b.version=Ek++},state:b}}function Vh(){var a=new Dk,b=[],c=[];return{init:function(){b.length=0;c.length=0},state:{lightsArray:b,shadowsArray:c,lights:a},setupLights:function(d){a.setup(b,c,d)},pushLight:function(a){b.push(a)},pushShadow:function(a){c.push(a)}}}function Fk(){function a(c){c=c.target;c.removeEventListener("dispose",a);b.delete(c)}var b=new WeakMap;return{get:function(c,
|
|
|
+d){if(!1===b.has(c)){var e=new Vh;b.set(c,new WeakMap);b.get(c).set(d,e);c.addEventListener("dispose",a)}else!1===b.get(c).has(d)?(e=new Vh,b.get(c).set(d,e)):e=b.get(c).get(d);return e},dispose:function(){b=new WeakMap}}}function Eb(a){K.call(this);this.type="MeshDepthMaterial";this.depthPacking=3200;this.morphTargets=this.skinning=!1;this.displacementMap=this.alphaMap=this.map=null;this.displacementScale=1;this.displacementBias=0;this.wireframe=!1;this.wireframeLinewidth=1;this.fog=!1;this.setValues(a)}
|
|
|
+function Fb(a){K.call(this);this.type="MeshDistanceMaterial";this.referencePosition=new n;this.nearDistance=1;this.farDistance=1E3;this.morphTargets=this.skinning=!1;this.displacementMap=this.alphaMap=this.map=null;this.displacementScale=1;this.displacementBias=0;this.fog=!1;this.setValues(a)}function Wh(a,b,c){function d(a,b,c){c=a<<0|b<<1|c<<2;var d=p[c];void 0===d&&(d=new Eb({depthPacking:3201,morphTargets:a,skinning:b}),p[c]=d);return d}function e(a,b,c){c=a<<0|b<<1|c<<2;var d=h[c];void 0===d&&
|
|
|
(d=new Fb({morphTargets:a,skinning:b}),h[c]=d);return d}function f(b,c,f,g,k,l){var m=b.geometry,p=d,x=b.customDepthMaterial;!0===f.isPointLight&&(p=e,x=b.customDistanceMaterial);void 0===x?(x=!1,!0===c.morphTargets&&(!0===m.isBufferGeometry?x=m.morphAttributes&&m.morphAttributes.position&&0<m.morphAttributes.position.length:!0===m.isGeometry&&(x=m.morphTargets&&0<m.morphTargets.length)),m=!1,!0===b.isSkinnedMesh&&(!0===c.skinning?m=!0:console.warn("THREE.WebGLShadowMap: THREE.SkinnedMesh with material.skinning set to false:",
|
|
|
b)),b=p(x,m,!0===b.isInstancedMesh)):b=x;a.localClippingEnabled&&!0===c.clipShadows&&0!==c.clippingPlanes.length&&(x=b.uuid,p=c.uuid,m=t[x],void 0===m&&(m={},t[x]=m),x=m[p],void 0===x&&(x=b.clone(),m[p]=x),b=x);b.visible=c.visible;b.wireframe=c.wireframe;b.side=3===l?null!==c.shadowSide?c.shadowSide:c.side:null!==c.shadowSide?c.shadowSide:r[c.side];b.clipShadows=c.clipShadows;b.clippingPlanes=c.clippingPlanes;b.clipIntersection=c.clipIntersection;b.wireframeLinewidth=c.wireframeLinewidth;b.linewidth=
|
|
|
c.linewidth;!0===f.isPointLight&&!0===b.isMeshDistanceMaterial&&(b.referencePosition.setFromMatrixPosition(f.matrixWorld),b.nearDistance=g,b.farDistance=k);return b}function g(c,d,e,l,m){if(!1!==c.visible){if(c.layers.test(d.layers)&&(c.isMesh||c.isLine||c.isPoints)&&(c.castShadow||c.receiveShadow&&3===m)&&(!c.frustumCulled||k.intersectsObject(c))){c.modelViewMatrix.multiplyMatrices(e.matrixWorldInverse,c.matrixWorld);var p=b.update(c),x=c.material;if(Array.isArray(x))for(var h=p.groups,r=0,q=h.length;r<
|
|
@@ -125,11 +125,11 @@ a.cullFace(1032))):g(2884);A=b}function x(b,c,d){if(b){if(f(32823),K!==c||L!==d)
|
|
|
!1;d=null;e.set(-1,0,0,0)}}},r=new function(){var b=!1,c=null,d=null,e=null;return{setTest:function(a){a?f(2929):g(2929)},setMask:function(d){c===d||b||(a.depthMask(d),c=d)},setFunc:function(b){if(d!==b){if(b)switch(b){case 0:a.depthFunc(512);break;case 1:a.depthFunc(519);break;case 2:a.depthFunc(513);break;case 3:a.depthFunc(515);break;case 4:a.depthFunc(514);break;case 5:a.depthFunc(518);break;case 6:a.depthFunc(516);break;case 7:a.depthFunc(517);break;default:a.depthFunc(515)}else a.depthFunc(515);
|
|
|
d=b}},setLocked:function(a){b=a},setClear:function(b){e!==b&&(a.clearDepth(b),e=b)},reset:function(){b=!1;e=d=c=null}}},u=new function(){var b=!1,c=null,d=null,e=null,k=null,l=null,m=null,p=null,x=null;return{setTest:function(a){b||(a?f(2960):g(2960))},setMask:function(d){c===d||b||(a.stencilMask(d),c=d)},setFunc:function(b,c,f){if(d!==b||e!==c||k!==f)a.stencilFunc(b,c,f),d=b,e=c,k=f},setOp:function(b,c,d){if(l!==b||m!==c||p!==d)a.stencilOp(b,c,d),l=b,m=c,p=d},setLocked:function(a){b=a},setClear:function(b){x!==
|
|
|
b&&(a.clearStencil(b),x=b)},reset:function(){b=!1;x=p=m=l=k=e=d=c=null}}};c=a.getParameter(34921);var n=new Uint8Array(c),w=new Uint8Array(c),D=new Uint8Array(c),v={},X=null,z=null,ra=null,B=null,Fa=null,qa=null,F=null,Ld=null,G=null,E=!1,C=null,A=null,I=null,K=null,L=null,ha=a.getParameter(35661),N=!1;c=0;c=a.getParameter(7938);-1!==c.indexOf("WebGL")?(c=parseFloat(/^WebGL ([0-9])/.exec(c)[1]),N=1<=c):-1!==c.indexOf("OpenGL ES")&&(c=parseFloat(/^OpenGL ES ([0-9])/.exec(c)[1]),N=2<=c);var M=null,
|
|
|
-Nd={},W=new ia,Wh=new ia,ng={};ng[3553]=d(3553,3553,1);ng[34067]=d(34067,34069,6);t.setClear(0,0,0,1);r.setClear(1);u.setClear(0);f(2929);r.setFunc(3);l(!1);m(1);f(2884);k(0);var Kc={100:32774,101:32778,102:32779};h?(Kc[103]=32775,Kc[104]=32776):(c=b.get("EXT_blend_minmax"),null!==c&&(Kc[103]=c.MIN_EXT,Kc[104]=c.MAX_EXT));var J={200:0,201:1,202:768,204:770,210:776,208:774,206:772,203:769,205:771,209:775,207:773};return{buffers:{color:t,depth:r,stencil:u},initAttributes:function(){for(var a=0,b=n.length;a<
|
|
|
+Nd={},W=new ia,Xh=new ia,ng={};ng[3553]=d(3553,3553,1);ng[34067]=d(34067,34069,6);t.setClear(0,0,0,1);r.setClear(1);u.setClear(0);f(2929);r.setFunc(3);l(!1);m(1);f(2884);k(0);var Kc={100:32774,101:32778,102:32779};h?(Kc[103]=32775,Kc[104]=32776):(c=b.get("EXT_blend_minmax"),null!==c&&(Kc[103]=c.MIN_EXT,Kc[104]=c.MAX_EXT));var J={200:0,201:1,202:768,204:770,210:776,208:774,206:772,203:769,205:771,209:775,207:773};return{buffers:{color:t,depth:r,stencil:u},initAttributes:function(){for(var a=0,b=n.length;a<
|
|
|
b;a++)n[a]=0},enableAttribute:function(a){e(a,0)},enableAttributeAndDivisor:e,disableUnusedAttributes:function(){for(var b=0,c=w.length;b!==c;++b)w[b]!==n[b]&&(a.disableVertexAttribArray(b),w[b]=0)},enable:f,disable:g,useProgram:function(b){return X!==b?(a.useProgram(b),X=b,!0):!1},setBlending:k,setMaterial:function(a,b){2===a.side?g(2884):f(2884);var c=1===a.side;b&&(c=!c);l(c);1===a.blending&&!1===a.transparent?k(0):k(a.blending,a.blendEquation,a.blendSrc,a.blendDst,a.blendEquationAlpha,a.blendSrcAlpha,
|
|
|
a.blendDstAlpha,a.premultipliedAlpha);r.setFunc(a.depthFunc);r.setTest(a.depthTest);r.setMask(a.depthWrite);t.setMask(a.colorWrite);b=a.stencilWrite;u.setTest(b);b&&(u.setMask(a.stencilWriteMask),u.setFunc(a.stencilFunc,a.stencilRef,a.stencilFuncMask),u.setOp(a.stencilFail,a.stencilZFail,a.stencilZPass));x(a.polygonOffset,a.polygonOffsetFactor,a.polygonOffsetUnits)},setFlipSided:l,setCullFace:m,setLineWidth:function(b){b!==I&&(N&&a.lineWidth(b),I=b)},setPolygonOffset:x,setScissorTest:function(a){a?
|
|
|
f(3089):g(3089)},activeTexture:p,bindTexture:function(b,c){null===M&&p();var d=Nd[M];void 0===d&&(d={type:void 0,texture:void 0},Nd[M]=d);if(d.type!==b||d.texture!==c)a.bindTexture(b,c||ng[b]),d.type=b,d.texture=c},unbindTexture:function(){var b=Nd[M];void 0!==b&&void 0!==b.type&&(a.bindTexture(b.type,null),b.type=void 0,b.texture=void 0)},compressedTexImage2D:function(){try{a.compressedTexImage2D.apply(a,arguments)}catch(R){console.error("THREE.WebGLState:",R)}},texImage2D:function(){try{a.texImage2D.apply(a,
|
|
|
-arguments)}catch(R){console.error("THREE.WebGLState:",R)}},texImage3D:function(){try{a.texImage3D.apply(a,arguments)}catch(R){console.error("THREE.WebGLState:",R)}},scissor:function(b){!1===W.equals(b)&&(a.scissor(b.x,b.y,b.z,b.w),W.copy(b))},viewport:function(b){!1===Wh.equals(b)&&(a.viewport(b.x,b.y,b.z,b.w),Wh.copy(b))},reset:function(){for(var b=0;b<w.length;b++)1===w[b]&&(a.disableVertexAttribArray(b),w[b]=0);v={};M=null;Nd={};A=C=ra=X=null;t.reset();r.reset();u.reset()}}}function Hk(a,b,c,d,
|
|
|
+arguments)}catch(R){console.error("THREE.WebGLState:",R)}},texImage3D:function(){try{a.texImage3D.apply(a,arguments)}catch(R){console.error("THREE.WebGLState:",R)}},scissor:function(b){!1===W.equals(b)&&(a.scissor(b.x,b.y,b.z,b.w),W.copy(b))},viewport:function(b){!1===Xh.equals(b)&&(a.viewport(b.x,b.y,b.z,b.w),Xh.copy(b))},reset:function(){for(var b=0;b<w.length;b++)1===w[b]&&(a.disableVertexAttribArray(b),w[b]=0);v={};M=null;Nd={};A=C=ra=X=null;t.reset();r.reset();u.reset()}}}function Hk(a,b,c,d,
|
|
|
e,f,g){function k(a,b){return I?new OffscreenCanvas(a,b):document.createElementNS("http://www.w3.org/1999/xhtml","canvas")}function l(a,b,c,d){var e=1;if(a.width>d||a.height>d)e=d/Math.max(a.width,a.height);if(1>e||!0===b){if("undefined"!==typeof HTMLImageElement&&a instanceof HTMLImageElement||"undefined"!==typeof HTMLCanvasElement&&a instanceof HTMLCanvasElement||"undefined"!==typeof ImageBitmap&&a instanceof ImageBitmap)return d=b?M.floorPowerOfTwo:Math.floor,b=d(e*a.width),e=d(e*a.height),void 0===
|
|
|
A&&(A=k(b,e)),c=c?k(b,e):A,c.width=b,c.height=e,c.getContext("2d").drawImage(a,0,0,b,e),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+a.width+"x"+a.height+") to ("+b+"x"+e+")."),c;"data"in a&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+a.width+"x"+a.height+").")}return a}function m(a){return M.isPowerOfTwo(a.width)&&M.isPowerOfTwo(a.height)}function x(a,b){return a.generateMipmaps&&b&&1003!==a.minFilter&&1006!==a.minFilter}function p(b,c,e,f){a.generateMipmap(b);
|
|
|
d.get(c).__maxMipLevel=Math.log(Math.max(e,f))*Math.LOG2E}function h(c,d,e){if(!1===qa)return d;if(null!==c){if(void 0!==a[c])return a[c];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+c+"'")}c=d;6403===d&&(5126===e&&(c=33326),5131===e&&(c=33325),5121===e&&(c=33321));6407===d&&(5126===e&&(c=34837),5131===e&&(c=34843),5121===e&&(c=32849));6408===d&&(5126===e&&(c=34836),5131===e&&(c=34842),5121===e&&(c=32856));33325===c||33326===c||34842===c||34836===c?b.get("EXT_color_buffer_float"):
|
|
@@ -158,7 +158,7 @@ l.__webglTexture),v(3553,e.texture,w),ra(k.__webglFramebuffer,e,36064,3553),x(e.
|
|
|
d.get(e.depthTexture).__webglTexture&&e.depthTexture.image.width===e.width&&e.depthTexture.image.height===e.height||(e.depthTexture.image.width=e.width,e.depthTexture.image.height=e.height,e.depthTexture.needsUpdate=!0);n(e.depthTexture,0);k=d.get(e.depthTexture).__webglTexture;if(1026===e.depthTexture.format)a.framebufferTexture2D(36160,36096,3553,k,0);else if(1027===e.depthTexture.format)a.framebufferTexture2D(36160,33306,3553,k,0);else throw Error("Unknown depthTexture format");}else if(l)for(k.__webglDepthbuffer=
|
|
|
[],l=0;6>l;l++)a.bindFramebuffer(36160,k.__webglFramebuffer[l]),k.__webglDepthbuffer[l]=a.createRenderbuffer(),B(k.__webglDepthbuffer[l],e);else a.bindFramebuffer(36160,k.__webglFramebuffer),k.__webglDepthbuffer=a.createRenderbuffer(),B(k.__webglDepthbuffer,e);a.bindFramebuffer(36160,null)}};this.updateRenderTargetMipmap=function(a){var b=a.texture,e=m(a)||qa;if(x(b,e)){e=a.isWebGLCubeRenderTarget?34067:3553;var f=d.get(b).__webglTexture;c.bindTexture(e,f);p(e,b,a.width,a.height);c.bindTexture(e,
|
|
|
null)}};this.updateMultisampleRenderTarget=function(b){if(b.isWebGLMultisampleRenderTarget)if(qa){var c=d.get(b);a.bindFramebuffer(36008,c.__webglMultisampledFramebuffer);a.bindFramebuffer(36009,c.__webglFramebuffer);c=b.width;var e=b.height,f=16384;b.depthBuffer&&(f|=256);b.stencilBuffer&&(f|=1024);a.blitFramebuffer(0,0,c,e,0,0,c,e,f,9728)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.")};this.safeSetTexture2D=function(a,b){a&&a.isWebGLRenderTarget&&
|
|
|
-(!1===P&&(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),P=!0),a=a.texture);n(a,b)};this.safeSetTextureCube=function(a,b){a&&a.isWebGLCubeRenderTarget&&(!1===O&&(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),O=!0),a=a.texture);a&&a.isCubeTexture||Array.isArray(a.image)&&6===a.image.length?w(a,b):D(a,b)}}function Xh(a,b,c){var d=
|
|
|
+(!1===P&&(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),P=!0),a=a.texture);n(a,b)};this.safeSetTextureCube=function(a,b){a&&a.isWebGLCubeRenderTarget&&(!1===O&&(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),O=!0),a=a.texture);a&&a.isCubeTexture||Array.isArray(a.image)&&6===a.image.length?w(a,b):D(a,b)}}function Yh(a,b,c){var d=
|
|
|
c.isWebGL2;return{convert:function(a){if(1009===a)return 5121;if(1017===a)return 32819;if(1018===a)return 32820;if(1019===a)return 33635;if(1010===a)return 5120;if(1011===a)return 5122;if(1012===a)return 5123;if(1013===a)return 5124;if(1014===a)return 5125;if(1015===a)return 5126;if(1016===a){if(d)return 5131;var c=b.get("OES_texture_half_float");return null!==c?c.HALF_FLOAT_OES:null}if(1021===a)return 6406;if(1022===a)return 6407;if(1023===a)return 6408;if(1024===a)return 6409;if(1025===a)return 6410;
|
|
|
if(1026===a)return 6402;if(1027===a)return 34041;if(1028===a)return 6403;if(1029===a)return 36244;if(1030===a)return 33319;if(1031===a)return 33320;if(1032===a)return 36248;if(1033===a)return 36249;if(33776===a||33777===a||33778===a||33779===a)if(c=b.get("WEBGL_compressed_texture_s3tc"),null!==c){if(33776===a)return c.COMPRESSED_RGB_S3TC_DXT1_EXT;if(33777===a)return c.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(33778===a)return c.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(33779===a)return c.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;
|
|
|
if(35840===a||35841===a||35842===a||35843===a)if(c=b.get("WEBGL_compressed_texture_pvrtc"),null!==c){if(35840===a)return c.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(35841===a)return c.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(35842===a)return c.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(35843===a)return c.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(36196===a)return c=b.get("WEBGL_compressed_texture_etc1"),null!==c?c.COMPRESSED_RGB_ETC1_WEBGL:null;if(37492===a||37496===a)if(c=b.get("WEBGL_compressed_texture_etc"),
|
|
@@ -166,17 +166,17 @@ null!==c){if(37492===a)return c.COMPRESSED_RGB8_ETC2;if(37496===a)return c.COMPR
|
|
|
!1;this.numViews=c}function Ik(a,b){function c(a){if(a.isArrayCamera)return a.cameras;x[0]=a;return x}function d(a){if(void 0===a.isArrayCamera)return!0;a=a.cameras;if(a.length>t)return!1;for(var b=1,c=a.length;b<c;b++)if(a[0].viewport.z!==a[b].viewport.z||a[0].viewport.w!==a[b].viewport.w)return!1;return!0}var e=a.extensions,f=a.properties,g,k,l,m,x,p,h,t=0;this.isAvailable=function(){if(void 0===h){var a=e.get("OVR_multiview2");if(h=null!==a&&!1===b.getContextAttributes().antialias)for(t=b.getParameter(a.MAX_VIEWS_OVR),
|
|
|
g=new og(0,0,2),p=new v,m=[],l=[],x=[],a=0;a<t;a++)m[a]=new P,l[a]=new ya}return h};this.attachCamera=function(b){if(!1!==d(b)){(k=a.getRenderTarget())?p.set(k.width,k.height):a.getDrawingBufferSize(p);if(b.isArrayCamera){var c=b.cameras[0].viewport;g.setSize(c.z,c.w);g.setNumViews(b.cameras.length)}else g.setSize(p.x,p.y),g.setNumViews(2);a.setRenderTarget(g)}};this.detachCamera=function(c){if(g===a.getRenderTarget()){a.setRenderTarget(k);var d=g,e=d.numViews,l=f.get(d).__webglViewFramebuffers,m=
|
|
|
d.width;d=d.height;if(c.isArrayCamera)for(var x=0;x<e;x++){var h=c.cameras[x].viewport,q=h.x,r=h.y,t=q+h.z;h=r+h.w;b.bindFramebuffer(36008,l[x]);b.blitFramebuffer(0,0,m,d,q,r,t,h,16384,9728)}else b.bindFramebuffer(36008,l[0]),b.blitFramebuffer(0,0,m,d,0,0,p.x,p.y,16384,9728)}};this.updateCameraProjectionMatricesUniform=function(a,d){a=c(a);for(var e=0;e<a.length;e++)m[e].copy(a[e].projectionMatrix);d.setValue(b,"projectionMatrices",m)};this.updateCameraViewMatricesUniform=function(a,d){a=c(a);for(var e=
|
|
|
-0;e<a.length;e++)m[e].copy(a[e].matrixWorldInverse);d.setValue(b,"viewMatrices",m)};this.updateObjectMatricesUniforms=function(a,d,e){d=c(d);for(var f=0;f<d.length;f++)m[f].multiplyMatrices(d[f].matrixWorldInverse,a.matrixWorld),l[f].getNormalMatrix(m[f]);e.setValue(b,"modelViewMatrices",m);e.setValue(b,"normalMatrices",l)}}function Pe(a){ea.call(this);this.cameras=a||[]}function Lc(){E.call(this);this.type="Group"}function Yh(a,b){function c(a){var b=r.get(a.inputSource);b&&(b.targetRay&&b.targetRay.dispatchEvent({type:a.type}),
|
|
|
+0;e<a.length;e++)m[e].copy(a[e].matrixWorldInverse);d.setValue(b,"viewMatrices",m)};this.updateObjectMatricesUniforms=function(a,d,e){d=c(d);for(var f=0;f<d.length;f++)m[f].multiplyMatrices(d[f].matrixWorldInverse,a.matrixWorld),l[f].getNormalMatrix(m[f]);e.setValue(b,"modelViewMatrices",m);e.setValue(b,"normalMatrices",l)}}function Pe(a){ea.call(this);this.cameras=a||[]}function Lc(){E.call(this);this.type="Group"}function Zh(a,b){function c(a){var b=r.get(a.inputSource);b&&(b.targetRay&&b.targetRay.dispatchEvent({type:a.type}),
|
|
|
b.grip&&b.grip.dispatchEvent({type:a.type}))}function d(){r.forEach(function(a,b){a.targetRay&&(a.targetRay.dispatchEvent({type:"disconnected",data:b}),a.targetRay.visible=!1);a.grip&&(a.grip.dispatchEvent({type:"disconnected",data:b}),a.grip.visible=!1)});r.clear();a.setFramebuffer(null);a.setRenderTarget(a.getRenderTarget());B.stop();k.isPresenting=!1;k.dispatchEvent({type:"sessionend"})}function e(a){x=a;B.setContext(l);B.start();k.isPresenting=!0;k.dispatchEvent({type:"sessionstart"})}function f(a){for(var b=
|
|
|
l.inputSources,c=0;c<t.length;c++)r.set(b[c],t[c]);for(c=0;c<a.removed.length;c++){b=a.removed[c];var d=r.get(b);d&&(d.targetRay&&d.targetRay.dispatchEvent({type:"disconnected",data:b}),d.grip&&d.grip.dispatchEvent({type:"disconnected",data:b}),r.delete(b))}for(c=0;c<a.added.length;c++)if(b=a.added[c],d=r.get(b))d.targetRay&&d.targetRay.dispatchEvent({type:"connected",data:b}),d.grip&&d.grip.dispatchEvent({type:"connected",data:b})}function g(a,b){null===b?a.matrixWorld.copy(a.matrix):a.matrixWorld.multiplyMatrices(b.matrixWorld,
|
|
|
a.matrix);a.matrixWorldInverse.getInverse(a.matrixWorld)}var k=this,l=null,m=1,x=null,p="local-floor",h=null,t=[],r=new Map,u=new ea;u.layers.enable(1);u.viewport=new ia;var y=new ea;y.layers.enable(2);y.viewport=new ia;var w=new Pe([u,y]);w.layers.enable(1);w.layers.enable(2);var D=null,v=null;this.isPresenting=this.enabled=!1;this.getController=function(a){var b=t[a];void 0===b&&(b={},t[a]=b);void 0===b.targetRay&&(b.targetRay=new Lc,b.targetRay.matrixAutoUpdate=!1,b.targetRay.visible=!1);return b.targetRay};
|
|
|
this.getControllerGrip=function(a){var b=t[a];void 0===b&&(b={},t[a]=b);void 0===b.grip&&(b.grip=new Lc,b.grip.matrixAutoUpdate=!1,b.grip.visible=!1);return b.grip};this.setFramebufferScaleFactor=function(a){m=a;1==k.isPresenting&&console.warn("WebXRManager: Cannot change framebuffer scale while presenting VR content")};this.setReferenceSpaceType=function(a){p=a};this.getReferenceSpace=function(){return x};this.getSession=function(){return l};this.setSession=function(a){l=a;null!==l&&(l.addEventListener("select",
|
|
|
c),l.addEventListener("selectstart",c),l.addEventListener("selectend",c),l.addEventListener("squeeze",c),l.addEventListener("squeezestart",c),l.addEventListener("squeezeend",c),l.addEventListener("end",d),a=b.getContextAttributes(),a=new XRWebGLLayer(l,b,{antialias:a.antialias,alpha:a.alpha,depth:a.depth,stencil:a.stencil,framebufferScaleFactor:m}),l.updateRenderState({baseLayer:a}),l.requestReferenceSpace(p).then(e),l.addEventListener("inputsourceschange",f))};var X=new n,z=new n;this.getCamera=
|
|
|
function(a){w.near=y.near=u.near=a.near;w.far=y.far=u.far=a.far;if(D!==w.near||v!==w.far)l.updateRenderState({depthNear:w.near,depthFar:w.far}),D=w.near,v=w.far;var b=a.parent,c=w.cameras;g(w,b);for(var d=0;d<c.length;d++)g(c[d],b);a.matrixWorld.copy(w.matrixWorld);a=a.children;d=0;for(b=a.length;d<b;d++)a[d].updateMatrixWorld(!0);X.setFromMatrixPosition(u.matrixWorld);z.setFromMatrixPosition(y.matrixWorld);d=X.distanceTo(z);var e=u.projectionMatrix.elements,f=y.projectionMatrix.elements,k=e[14]/
|
|
|
-(e[10]-1);a=e[14]/(e[10]+1);b=(e[9]+1)/e[5];c=(e[9]-1)/e[5];var m=(e[8]-1)/e[0],p=(f[8]+1)/f[0];f=k*m;e=k*p;p=d/(-m+p);m=p*-m;u.matrixWorld.decompose(w.position,w.quaternion,w.scale);w.translateX(m);w.translateZ(p);w.matrixWorld.compose(w.position,w.quaternion,w.scale);w.matrixWorldInverse.getInverse(w.matrixWorld);k+=p;p=a+p;w.projectionMatrix.makePerspective(f-m,e+(d-m),b*a/p*k,c*a/p*k,k,p);return w};var ra=null,B=new zh;B.setAnimationLoop(function(b,c){h=c.getViewerPose(x);if(null!==h){var d=h.views,
|
|
|
+(e[10]-1);a=e[14]/(e[10]+1);b=(e[9]+1)/e[5];c=(e[9]-1)/e[5];var m=(e[8]-1)/e[0],p=(f[8]+1)/f[0];f=k*m;e=k*p;p=d/(-m+p);m=p*-m;u.matrixWorld.decompose(w.position,w.quaternion,w.scale);w.translateX(m);w.translateZ(p);w.matrixWorld.compose(w.position,w.quaternion,w.scale);w.matrixWorldInverse.getInverse(w.matrixWorld);k+=p;p=a+p;w.projectionMatrix.makePerspective(f-m,e+(d-m),b*a/p*k,c*a/p*k,k,p);return w};var ra=null,B=new Ah;B.setAnimationLoop(function(b,c){h=c.getViewerPose(x);if(null!==h){var d=h.views,
|
|
|
e=l.renderState.baseLayer;a.setFramebuffer(e.framebuffer);for(var f=0;f<d.length;f++){var g=d[f],k=e.getViewport(g),m=w.cameras[f];m.matrix.fromArray(g.transform.matrix);m.projectionMatrix.fromArray(g.projectionMatrix);m.viewport.set(k.x,k.y,k.width,k.height);0===f&&w.matrix.copy(m.matrix)}}d=l.inputSources;for(f=0;f<t.length;f++)e=t[f],g=d[f],m=k=null,g&&(e.targetRay&&(k=c.getPose(g.targetRaySpace,x),null!==k&&(e.targetRay.matrix.fromArray(k.transform.matrix),e.targetRay.matrix.decompose(e.targetRay.position,
|
|
|
e.targetRay.rotation,e.targetRay.scale))),e.grip&&g.gripSpace&&(m=c.getPose(g.gripSpace,x),null!==m&&(e.grip.matrix.fromArray(m.transform.matrix),e.grip.matrix.decompose(e.grip.position,e.grip.rotation,e.grip.scale)))),e.targetRay&&(e.targetRay.visible=null!==k),e.grip&&(e.grip.visible=null!==m);ra&&ra(b,c)});this.setAnimationLoop=function(a){ra=a};this.dispose=function(){}}function pg(a){var b;function c(){sa=new yj(H);Ga=new wj(H,sa,a);!1===Ga.isWebGL2&&(sa.get("WEBGL_depth_texture"),sa.get("OES_texture_float"),
|
|
|
-sa.get("OES_texture_half_float"),sa.get("OES_texture_half_float_linear"),sa.get("OES_standard_derivatives"),sa.get("OES_element_index_uint"),sa.get("ANGLE_instanced_arrays"));sa.get("OES_texture_float_linear");pa=new Xh(H,sa,Ga);aa=new Gk(H,sa,Ga);aa.scissor(Y.copy(S).multiplyScalar(R).floor());aa.viewport(W.copy(fa).multiplyScalar(R).floor());ea=new Bj(H);Q=new xk;U=new Hk(H,sa,aa,Q,Ga,pa,ea);na=new tj(H,Ga);ya=new zj(H,na,ea);ta=new Ej(H,ya,na,ea);za=new Dj(H);ua=new wk(A,sa,Ga);xa=new Ak;wa=new Fk;
|
|
|
+sa.get("OES_texture_half_float"),sa.get("OES_texture_half_float_linear"),sa.get("OES_standard_derivatives"),sa.get("OES_element_index_uint"),sa.get("ANGLE_instanced_arrays"));sa.get("OES_texture_float_linear");pa=new Yh(H,sa,Ga);aa=new Gk(H,sa,Ga);aa.scissor(Y.copy(S).multiplyScalar(R).floor());aa.viewport(W.copy(fa).multiplyScalar(R).floor());ea=new Bj(H);Q=new xk;U=new Hk(H,sa,aa,Q,Ga,pa,ea);na=new tj(H,Ga);ya=new zj(H,na,ea);ta=new Ej(H,ya,na,ea);za=new Dj(H);ua=new wk(A,sa,Ga);xa=new Ak;wa=new Fk;
|
|
|
oa=new uj(A,aa,ta,z);Aa=new vj(H,sa,ea,Ga);Ca=new Aj(H,sa,ea,Ga);ea.programs=ua.programs;A.capabilities=Ga;A.extensions=sa;A.properties=Q;A.renderLists=xa;A.state=aa;A.info=ea}function d(a){a.preventDefault();console.log("THREE.WebGLRenderer: Context Lost.");I=!0}function e(){console.log("THREE.WebGLRenderer: Context Restored.");I=!1;c()}function f(a){a=a.target;a.removeEventListener("dispose",f);g(a);Q.remove(a)}function g(a){var b=Q.get(a).program;a.program=void 0;void 0!==b&&ua.releaseProgram(b)}
|
|
|
function k(a,b){a.render(function(a){A.renderBufferImmediate(a,b)})}function l(a,b,c,d){if(!1!==a.visible){if(a.layers.test(b.layers))if(a.isGroup)c=a.renderOrder;else if(a.isLOD)!0===a.autoUpdate&&a.update(b);else if(a.isLight)F.pushLight(a),a.castShadow&&F.pushShadow(a);else if(a.isSprite){if(!a.frustumCulled||lg.intersectsSprite(a)){d&&Gb.setFromMatrixPosition(a.matrixWorld).applyMatrix4(Md);var e=ta.update(a),f=a.material;f.visible&&C.push(a,e,f,c,Gb.z,null)}}else if(a.isImmediateRenderObject)d&&
|
|
|
Gb.setFromMatrixPosition(a.matrixWorld).applyMatrix4(Md),C.push(a,null,a.material,c,Gb.z,null);else if(a.isMesh||a.isLine||a.isPoints)if(a.isSkinnedMesh&&a.skeleton.frame!==ea.render.frame&&(a.skeleton.update(),a.skeleton.frame=ea.render.frame),!a.frustumCulled||lg.intersectsObject(a))if(d&&Gb.setFromMatrixPosition(a.matrixWorld).applyMatrix4(Md),e=ta.update(a),f=a.material,Array.isArray(f))for(var g=e.groups,k=0,m=g.length;k<m;k++){var p=g[k],x=f[p.materialIndex];x&&x.visible&&C.push(a,e,x,c,Gb.z,
|
|
@@ -206,8 +206,8 @@ function r(a,b,c){a.roughness.value=b.roughness;a.metalness.value=b.metalness;b.
|
|
|
b.displacementMap,a.displacementScale.value=b.displacementScale,a.displacementBias.value=b.displacementBias);if(b.envMap||c)a.envMapIntensity.value=b.envMapIntensity}a=a||{};var u=void 0!==a.canvas?a.canvas:document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),y=void 0!==a.context?a.context:null,w=void 0!==a.alpha?a.alpha:!1,D=void 0!==a.depth?a.depth:!0,da=void 0!==a.stencil?a.stencil:!0,X=void 0!==a.antialias?a.antialias:!1,z=void 0!==a.premultipliedAlpha?a.premultipliedAlpha:!0,ra=
|
|
|
void 0!==a.preserveDrawingBuffer?a.preserveDrawingBuffer:!1,B=void 0!==a.powerPreference?a.powerPreference:"default",E=void 0!==a.failIfMajorPerformanceCaveat?a.failIfMajorPerformanceCaveat:!1,C=null,F=null;this.domElement=u;this.debug={checkShaderErrors:!0};this.sortObjects=this.autoClearStencil=this.autoClearDepth=this.autoClearColor=this.autoClear=!0;this.clippingPlanes=[];this.localClippingEnabled=!1;this.gammaFactor=2;this.outputEncoding=3E3;this.physicallyCorrectLights=!1;this.toneMappingWhitePoint=
|
|
|
this.toneMappingExposure=this.toneMapping=1;this.maxMorphTargets=8;this.maxMorphNormals=4;var A=this,I=!1,K=null,L=0,N=0,O=null,V=null,Ne=-1;var ha=b=null;var Oe=!1;var Z=null,T=null,W=new ia,Y=new ia,ba=null,ca=u.width,J=u.height,R=1,ja=null,la=null,fa=new ia(0,0,ca,J),S=new ia(0,0,ca,J),kg=!1,lg=new Gc,Ta=new xj,ma=!1,mg=!1,Md=new P,Gb=new n;try{w={alpha:w,depth:D,stencil:da,antialias:X,premultipliedAlpha:z,preserveDrawingBuffer:ra,powerPreference:B,failIfMajorPerformanceCaveat:E,xrCompatible:!0};
|
|
|
-u.addEventListener("webglcontextlost",d,!1);u.addEventListener("webglcontextrestored",e,!1);var H=y||u.getContext("webgl",w)||u.getContext("experimental-webgl",w);if(null===H){if(null!==u.getContext("webgl"))throw Error("Error creating WebGL context with your selected attributes.");throw Error("Error creating WebGL context.");}void 0===H.getShaderPrecisionFormat&&(H.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(Zh){throw console.error("THREE.WebGLRenderer: "+
|
|
|
-Zh.message),Zh;}var sa,Ga,aa,ea,Q,U,na,ya,ta,ua,xa,wa,oa,za,Aa,Ca,pa;c();var ka=new Yh(A,H);this.xr=ka;var va=new Ik(A,H),Ea=new Vh(A,ta,Ga.maxTextureSize);this.shadowMap=Ea;this.getContext=function(){return H};this.getContextAttributes=function(){return H.getContextAttributes()};this.forceContextLoss=function(){var a=sa.get("WEBGL_lose_context");a&&a.loseContext()};this.forceContextRestore=function(){var a=sa.get("WEBGL_lose_context");a&&a.restoreContext()};this.getPixelRatio=function(){return R};
|
|
|
+u.addEventListener("webglcontextlost",d,!1);u.addEventListener("webglcontextrestored",e,!1);var H=y||u.getContext("webgl",w)||u.getContext("experimental-webgl",w);if(null===H){if(null!==u.getContext("webgl"))throw Error("Error creating WebGL context with your selected attributes.");throw Error("Error creating WebGL context.");}void 0===H.getShaderPrecisionFormat&&(H.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch($h){throw console.error("THREE.WebGLRenderer: "+
|
|
|
+$h.message),$h;}var sa,Ga,aa,ea,Q,U,na,ya,ta,ua,xa,wa,oa,za,Aa,Ca,pa;c();var ka=new Zh(A,H);this.xr=ka;var va=new Ik(A,H),Ea=new Wh(A,ta,Ga.maxTextureSize);this.shadowMap=Ea;this.getContext=function(){return H};this.getContextAttributes=function(){return H.getContextAttributes()};this.forceContextLoss=function(){var a=sa.get("WEBGL_lose_context");a&&a.loseContext()};this.forceContextRestore=function(){var a=sa.get("WEBGL_lose_context");a&&a.restoreContext()};this.getPixelRatio=function(){return R};
|
|
|
this.setPixelRatio=function(a){void 0!==a&&(R=a,this.setSize(ca,J,!1))};this.getSize=function(a){void 0===a&&(console.warn("WebGLRenderer: .getsize() now requires a Vector2 as an argument"),a=new v);return a.set(ca,J)};this.setSize=function(a,b,c){ka.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(ca=a,J=b,u.width=Math.floor(a*R),u.height=Math.floor(b*R),!1!==c&&(u.style.width=a+"px",u.style.height=b+"px"),this.setViewport(0,0,a,b))};this.getDrawingBufferSize=
|
|
|
function(a){void 0===a&&(console.warn("WebGLRenderer: .getdrawingBufferSize() now requires a Vector2 as an argument"),a=new v);return a.set(ca*R,J*R).floor()};this.setDrawingBufferSize=function(a,b,c){ca=a;J=b;R=c;u.width=Math.floor(a*c);u.height=Math.floor(b*c);this.setViewport(0,0,a,b)};this.getCurrentViewport=function(a){void 0===a&&(console.warn("WebGLRenderer: .getCurrentViewport() now requires a Vector4 as an argument"),a=new ia);return a.copy(W)};this.getViewport=function(a){return a.copy(fa)};
|
|
|
this.setViewport=function(a,b,c,d){a.isVector4?fa.set(a.x,a.y,a.z,a.w):fa.set(a,b,c,d);aa.viewport(W.copy(fa).multiplyScalar(R).floor())};this.getScissor=function(a){return a.copy(S)};this.setScissor=function(a,b,c,d){a.isVector4?S.set(a.x,a.y,a.z,a.w):S.set(a,b,c,d);aa.scissor(Y.copy(S).multiplyScalar(R).floor())};this.getScissorTest=function(){return kg};this.setScissorTest=function(a){aa.setScissorTest(kg=a)};this.setOpaqueSort=function(a){ja=a};this.setTransparentSort=function(a){la=a};this.getClearColor=
|
|
@@ -220,7 +220,7 @@ y){var w=y.buffer,z=y.type;y=y.bytesPerElement;if(t.isInterleavedBufferAttribute
|
|
|
t.meshPerAttribute*t.count)):aa.enableAttribute(r),H.bindBuffer(34962,w),H.vertexAttribPointer(r,u,z,n,0,0)}}else if("instanceMatrix"===da)y=na.get(f.instanceMatrix),void 0!==y&&(w=y.buffer,z=y.type,aa.enableAttributeAndDivisor(r+0,1),aa.enableAttributeAndDivisor(r+1,1),aa.enableAttributeAndDivisor(r+2,1),aa.enableAttributeAndDivisor(r+3,1),H.bindBuffer(34962,w),H.vertexAttribPointer(r+0,4,z,!1,64,0),H.vertexAttribPointer(r+1,4,z,!1,64,16),H.vertexAttribPointer(r+2,4,z,!1,64,32),H.vertexAttribPointer(r+
|
|
|
3,4,z,!1,64,48));else if(void 0!==q&&(n=q[da],void 0!==n))switch(n.length){case 2:H.vertexAttrib2fv(r,n);break;case 3:H.vertexAttrib3fv(r,n);break;case 4:H.vertexAttrib4fv(r,n);break;default:H.vertexAttrib1fv(r,n)}}}aa.disableUnusedAttributes()}null!==a&&H.bindBuffer(34963,x.buffer)}var da=d.drawRange.start*p;m=null!==g?g.start*p:0;x=Math.max(da,m);g=Math.max(0,Math.min(null!==a?a.count:c.count,da+d.drawRange.count*p,m+(null!==g?g.count*p:Infinity))-1-x+1);0!==g&&(f.isMesh?!0===e.wireframe?(aa.setLineWidth(e.wireframeLinewidth*
|
|
|
(null===O?R:1)),k.setMode(1)):k.setMode(4):f.isLine?(e=e.linewidth,void 0===e&&(e=1),aa.setLineWidth(e*(null===O?R:1)),f.isLineSegments?k.setMode(1):f.isLineLoop?k.setMode(2):k.setMode(3)):f.isPoints?k.setMode(0):f.isSprite&&k.setMode(4),f.isInstancedMesh?k.renderInstances(d,x,g,f.count):d.isInstancedBufferGeometry?k.renderInstances(d,x,g,d.maxInstancedCount):k.render(x,g))};this.compile=function(a,b){F=wa.get(a,b);F.init();a.traverse(function(a){a.isLight&&(F.pushLight(a),a.castShadow&&F.pushShadow(a))});
|
|
|
-F.setupLights(b);var c={};a.traverse(function(b){if(b.material)if(Array.isArray(b.material))for(var d=0;d<b.material.length;d++)!1===b.material[d].uuid in c&&(p(b.material[d],a,b),c[b.material[d].uuid]=!0);else!1===b.material.uuid in c&&(p(b.material,a,b),c[b.material.uuid]=!0)})};var Da=null,Ba=new zh;Ba.setAnimationLoop(function(a){ka.isPresenting||Da&&Da(a)});"undefined"!==typeof window&&Ba.setContext(window);this.setAnimationLoop=function(a){Da=a;ka.setAnimationLoop(a);Ba.start()};this.render=
|
|
|
+F.setupLights(b);var c={};a.traverse(function(b){if(b.material)if(Array.isArray(b.material))for(var d=0;d<b.material.length;d++)!1===b.material[d].uuid in c&&(p(b.material[d],a,b),c[b.material[d].uuid]=!0);else!1===b.material.uuid in c&&(p(b.material,a,b),c[b.material.uuid]=!0)})};var Da=null,Ba=new Ah;Ba.setAnimationLoop(function(a){ka.isPresenting||Da&&Da(a)});"undefined"!==typeof window&&Ba.setContext(window);this.setAnimationLoop=function(a){Da=a;ka.setAnimationLoop(a);Ba.start()};this.render=
|
|
|
function(a,c,d,e){if(void 0!==d){console.warn("THREE.WebGLRenderer.render(): the renderTarget argument has been removed. Use .setRenderTarget() instead.");var f=d}if(void 0!==e){console.warn("THREE.WebGLRenderer.render(): the forceClear argument has been removed. Use .clear() instead.");var g=e}c&&c.isCamera?I||(ha=b=null,Oe=!1,Ne=-1,Z=null,!0===a.autoUpdate&&a.updateMatrixWorld(),null===c.parent&&c.updateMatrixWorld(),ka.enabled&&ka.isPresenting&&(c=ka.getCamera(c)),F=wa.get(a,c),F.init(),a.onBeforeRender(A,
|
|
|
a,c,f||O),Md.multiplyMatrices(c.projectionMatrix,c.matrixWorldInverse),lg.setFromProjectionMatrix(Md),mg=this.localClippingEnabled,ma=Ta.init(this.clippingPlanes,mg,c),C=xa.get(a,c),C.init(),l(a,c,0,A.sortObjects),C.finish(),!0===A.sortObjects&&C.sort(ja,la),ma&&Ta.beginShadows(),Ea.render(F.state.shadowsArray,a,c),F.setupLights(c),ma&&Ta.endShadows(),this.info.autoReset&&this.info.reset(),void 0!==f&&this.setRenderTarget(f),ka.enabled&&va.isAvailable()&&va.attachCamera(c),oa.render(C,a,c,g),d=C.opaque,
|
|
|
e=C.transparent,a.overrideMaterial?(f=a.overrideMaterial,d.length&&m(d,a,c,f),e.length&&m(e,a,c,f)):(d.length&&m(d,a,c),e.length&&m(e,a,c)),a.onAfterRender(A,a,c),null!==O&&(U.updateRenderTargetMipmap(O),U.updateMultisampleRenderTarget(O)),aa.buffers.depth.setTest(!0),aa.buffers.depth.setMask(!0),aa.buffers.color.setMask(!0),aa.setPolygonOffset(!1),ka.enabled&&va.isAvailable()&&va.detachCamera(c),F=C=null):console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.")};this.setFramebuffer=
|
|
@@ -231,7 +231,7 @@ d&&0<=c&&c<=a.height-e&&H.readPixels(b,c,d,e,pa.convert(m),pa.convert(h),f):cons
|
|
|
function(a,b,c){void 0===c&&(c=0);var d=Math.pow(2,-c),e=Math.floor(b.image.width*d);d=Math.floor(b.image.height*d);var f=pa.convert(b.format);U.setTexture2D(b,0);H.copyTexImage2D(3553,c,f,a.x,a.y,e,d,0);aa.unbindTexture()};this.copyTextureToTexture=function(a,b,c,d){var e=b.image.width,f=b.image.height,g=pa.convert(c.format),k=pa.convert(c.type);U.setTexture2D(c,0);b.isDataTexture?H.texSubImage2D(3553,d||0,a.x,a.y,e,f,g,k,b.image.data):H.texSubImage2D(3553,d||0,a.x,a.y,g,k,b.image);aa.unbindTexture()};
|
|
|
this.initTexture=function(a){U.setTexture2D(a,0);aa.unbindTexture()};"undefined"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}function Qe(a,b){this.name="";this.color=new C(a);this.density=void 0!==b?b:2.5E-4}function Re(a,b,c){this.name="";this.color=new C(a);this.near=void 0!==b?b:1;this.far=void 0!==c?c:1E3}function qb(a,b){this.array=a;this.stride=b;this.count=void 0!==a?a.length/b:0;this.usage=35044;this.updateRange={offset:0,count:-1};
|
|
|
this.version=0}function Od(a,b,c,d){this.data=a;this.itemSize=b;this.offset=c;this.normalized=!0===d}function Hb(a){K.call(this);this.type="SpriteMaterial";this.color=new C(16777215);this.alphaMap=this.map=null;this.rotation=0;this.transparent=this.sizeAttenuation=!0;this.setValues(a)}function Pd(a){E.call(this);this.type="Sprite";if(void 0===Mc){Mc=new A;var b=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]);b=new qb(b,5);Mc.setIndex([0,1,2,0,2,3]);Mc.setAttribute("position",
|
|
|
-new Od(b,3,0,!1));Mc.setAttribute("uv",new Od(b,2,3,!1))}this.geometry=Mc;this.material=void 0!==a?a:new Hb;this.center=new v(.5,.5)}function Se(a,b,c,d,e,f){Nc.subVectors(a,c).addScalar(.5).multiply(d);void 0!==e?(Qd.x=f*Nc.x-e*Nc.y,Qd.y=e*Nc.x+f*Nc.y):Qd.copy(Nc);a.copy(b);a.x+=Qd.x;a.y+=Qd.y;a.applyMatrix4($h)}function Rd(){E.call(this);this._currentLevel=0;this.type="LOD";Object.defineProperties(this,{levels:{enumerable:!0,value:[]}});this.autoUpdate=!0}function Sd(a,b){a&&a.isGeometry&&console.error("THREE.SkinnedMesh no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");
|
|
|
+new Od(b,3,0,!1));Mc.setAttribute("uv",new Od(b,2,3,!1))}this.geometry=Mc;this.material=void 0!==a?a:new Hb;this.center=new v(.5,.5)}function Se(a,b,c,d,e,f){Nc.subVectors(a,c).addScalar(.5).multiply(d);void 0!==e?(Qd.x=f*Nc.x-e*Nc.y,Qd.y=e*Nc.x+f*Nc.y):Qd.copy(Nc);a.copy(b);a.x+=Qd.x;a.y+=Qd.y;a.applyMatrix4(ai)}function Rd(){E.call(this);this._currentLevel=0;this.type="LOD";Object.defineProperties(this,{levels:{enumerable:!0,value:[]}});this.autoUpdate=!0}function Sd(a,b){a&&a.isGeometry&&console.error("THREE.SkinnedMesh no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");
|
|
|
ca.call(this,a,b);this.type="SkinnedMesh";this.bindMode="attached";this.bindMatrix=new P;this.bindMatrixInverse=new P}function Te(a,b){a=a||[];this.bones=a.slice(0);this.boneMatrices=new Float32Array(16*this.bones.length);this.frame=-1;if(void 0===b)this.calculateInverses();else if(this.bones.length===b.length)this.boneInverses=b.slice(0);else for(console.warn("THREE.Skeleton boneInverses is the wrong length."),this.boneInverses=[],a=0,b=this.bones.length;a<b;a++)this.boneInverses.push(new P)}function qg(){E.call(this);
|
|
|
this.type="Bone"}function Ue(a,b,c){ca.call(this,a,b);this.instanceMatrix=new L(new Float32Array(16*c),16);this.count=c;this.frustumCulled=!1}function ja(a){K.call(this);this.type="LineBasicMaterial";this.color=new C(16777215);this.linewidth=1;this.linejoin=this.linecap="round";this.setValues(a)}function Ja(a,b,c){1===c&&console.error("THREE.Line: parameter THREE.LinePieces no longer supported. Use THREE.LineSegments instead.");E.call(this);this.type="Line";this.geometry=void 0!==a?a:new A;this.material=
|
|
|
void 0!==b?b:new ja}function la(a,b){Ja.call(this,a,b);this.type="LineSegments"}function Ve(a,b){Ja.call(this,a,b);this.type="LineLoop"}function Ua(a){K.call(this);this.type="PointsMaterial";this.color=new C(16777215);this.alphaMap=this.map=null;this.size=1;this.sizeAttenuation=!0;this.morphTargets=!1;this.setValues(a)}function Oc(a,b){E.call(this);this.type="Points";this.geometry=void 0!==a?a:new A;this.material=void 0!==b?b:new Ua;this.updateMorphTargets()}function rg(a,b,c,d,e,f,g){var k=sg.distanceSqToPoint(a);
|
|
@@ -256,16 +256,16 @@ this.fromBufferGeometry(new Vc(a,b,c,d,e,f));this.mergeVertices()}function Vc(a,
|
|
|
c;++p){var v=p/c*e*Math.PI*2;g(v,e,f,a,r);g(v+.01,e,f,a,u);w.subVectors(u,r);D.addVectors(u,r);y.crossVectors(w,D);D.crossVectors(y,w);y.normalize();D.normalize();for(v=0;v<=d;++v){var X=v/d*Math.PI*2,z=-b*Math.cos(X);X=b*Math.sin(X);q.x=r.x+(z*D.x+X*y.x);q.y=r.y+(z*D.y+X*y.y);q.z=r.z+(z*D.z+X*y.z);l.push(q.x,q.y,q.z);t.subVectors(q,r).normalize();m.push(t.x,t.y,t.z);h.push(p/c);h.push(v/d)}}for(v=1;v<=c;v++)for(p=1;p<=d;p++)a=(d+1)*v+(p-1),b=(d+1)*v+p,e=(d+1)*(v-1)+p,k.push((d+1)*(v-1)+(p-1),a,e),
|
|
|
k.push(a,b,e);this.setIndex(k);this.setAttribute("position",new B(l,3));this.setAttribute("normal",new B(m,3));this.setAttribute("uv",new B(h,2))}function ce(a,b,c,d,e){N.call(this);this.type="TorusGeometry";this.parameters={radius:a,tube:b,radialSegments:c,tubularSegments:d,arc:e};this.fromBufferGeometry(new Wc(a,b,c,d,e));this.mergeVertices()}function Wc(a,b,c,d,e){A.call(this);this.type="TorusBufferGeometry";this.parameters={radius:a,tube:b,radialSegments:c,tubularSegments:d,arc:e};a=a||1;b=b||
|
|
|
.4;c=Math.floor(c)||8;d=Math.floor(d)||6;e=e||2*Math.PI;var f=[],g=[],k=[],l=[],m=new n,h=new n,p=new n,q,t;for(q=0;q<=c;q++)for(t=0;t<=d;t++){var r=t/d*e,u=q/c*Math.PI*2;h.x=(a+b*Math.cos(u))*Math.cos(r);h.y=(a+b*Math.cos(u))*Math.sin(r);h.z=b*Math.sin(u);g.push(h.x,h.y,h.z);m.x=a*Math.cos(r);m.y=a*Math.sin(r);p.subVectors(h,m).normalize();k.push(p.x,p.y,p.z);l.push(t/d);l.push(q/c)}for(q=1;q<=c;q++)for(t=1;t<=d;t++)a=(d+1)*(q-1)+t-1,b=(d+1)*(q-1)+t,e=(d+1)*q+t,f.push((d+1)*q+t-1,a,e),f.push(a,b,
|
|
|
-e);this.setIndex(f);this.setAttribute("position",new B(g,3));this.setAttribute("normal",new B(k,3));this.setAttribute("uv",new B(l,2))}function ai(a,b,c,d,e){for(var f,g=0,k=b,l=c-d;k<c;k+=d)g+=(a[l]-a[k])*(a[k+1]+a[l+1]),l=k;if(e===0<g)for(e=b;e<c;e+=d)f=bi(e,a[e],a[e+1],f);else for(e=c-d;e>=b;e-=d)f=bi(e,a[e],a[e+1],f);f&&dc(f,f.next)&&(de(f),f=f.next);return f}function ee(a,b){if(!a)return a;b||(b=a);do{var c=!1;if(a.steiner||!dc(a,a.next)&&0!==ta(a.prev,a,a.next))a=a.next;else{de(a);a=b=a.prev;
|
|
|
+e);this.setIndex(f);this.setAttribute("position",new B(g,3));this.setAttribute("normal",new B(k,3));this.setAttribute("uv",new B(l,2))}function bi(a,b,c,d,e){for(var f,g=0,k=b,l=c-d;k<c;k+=d)g+=(a[l]-a[k])*(a[k+1]+a[l+1]),l=k;if(e===0<g)for(e=b;e<c;e+=d)f=ci(e,a[e],a[e+1],f);else for(e=c-d;e>=b;e-=d)f=ci(e,a[e],a[e+1],f);f&&dc(f,f.next)&&(de(f),f=f.next);return f}function ee(a,b){if(!a)return a;b||(b=a);do{var c=!1;if(a.steiner||!dc(a,a.next)&&0!==ta(a.prev,a,a.next))a=a.next;else{de(a);a=b=a.prev;
|
|
|
if(a===a.next)break;c=!0}}while(c||a!==b);return b}function fe(a,b,c,d,e,f,g){if(a){if(!g&&f){var k=a,l=k;do null===l.z&&(l.z=ug(l.x,l.y,d,e,f)),l.prevZ=l.prev,l=l.nextZ=l.next;while(l!==k);l.prevZ.nextZ=null;l.prevZ=null;k=l;var m,h,p,q,t=1;do{l=k;var r=k=null;for(h=0;l;){h++;var n=l;for(m=p=0;m<t&&(p++,n=n.nextZ,n);m++);for(q=t;0<p||0<q&&n;)0!==p&&(0===q||!n||l.z<=n.z)?(m=l,l=l.nextZ,p--):(m=n,n=n.nextZ,q--),r?r.nextZ=m:k=m,m.prevZ=r,r=m;l=n}r.nextZ=null;t*=2}while(1<h)}for(k=a;a.prev!==a.next;){l=
|
|
|
-a.prev;n=a.next;if(f)r=Jk(a,d,e,f);else a:if(r=a,h=r.prev,p=r,t=r.next,0<=ta(h,p,t))r=!1;else{for(m=r.next.next;m!==r.prev;){if(Xc(h.x,h.y,p.x,p.y,t.x,t.y,m.x,m.y)&&0<=ta(m.prev,m,m.next)){r=!1;break a}m=m.next}r=!0}if(r)b.push(l.i/c),b.push(a.i/c),b.push(n.i/c),de(a),k=a=n.next;else if(a=n,a===k){if(!g)fe(ee(a),b,c,d,e,f,1);else if(1===g){g=b;k=c;l=a;do n=l.prev,r=l.next.next,!dc(n,r)&&ci(n,l,l.next,r)&&ge(n,r)&&ge(r,n)&&(g.push(n.i/k),g.push(l.i/k),g.push(r.i/k),de(l),de(l.next),l=a=r),l=l.next;
|
|
|
-while(l!==a);a=l;fe(a,b,c,d,e,f,2)}else if(2===g)a:{g=a;do{for(k=g.next.next;k!==g.prev;){if(l=g.i!==k.i){l=g;n=k;if(r=l.next.i!==n.i&&l.prev.i!==n.i){b:{r=l;do{if(r.i!==l.i&&r.next.i!==l.i&&r.i!==n.i&&r.next.i!==n.i&&ci(r,r.next,l,n)){r=!0;break b}r=r.next}while(r!==l);r=!1}r=!r}if(r=r&&ge(l,n)&&ge(n,l)){r=l;h=!1;p=(l.x+n.x)/2;n=(l.y+n.y)/2;do r.y>n!==r.next.y>n&&r.next.y!==r.y&&p<(r.next.x-r.x)*(n-r.y)/(r.next.y-r.y)+r.x&&(h=!h),r=r.next;while(r!==l);r=h}l=r}if(l){a=di(g,k);g=ee(g,g.next);a=ee(a,
|
|
|
+a.prev;n=a.next;if(f)r=Jk(a,d,e,f);else a:if(r=a,h=r.prev,p=r,t=r.next,0<=ta(h,p,t))r=!1;else{for(m=r.next.next;m!==r.prev;){if(Xc(h.x,h.y,p.x,p.y,t.x,t.y,m.x,m.y)&&0<=ta(m.prev,m,m.next)){r=!1;break a}m=m.next}r=!0}if(r)b.push(l.i/c),b.push(a.i/c),b.push(n.i/c),de(a),k=a=n.next;else if(a=n,a===k){if(!g)fe(ee(a),b,c,d,e,f,1);else if(1===g){g=b;k=c;l=a;do n=l.prev,r=l.next.next,!dc(n,r)&&di(n,l,l.next,r)&&ge(n,r)&&ge(r,n)&&(g.push(n.i/k),g.push(l.i/k),g.push(r.i/k),de(l),de(l.next),l=a=r),l=l.next;
|
|
|
+while(l!==a);a=l;fe(a,b,c,d,e,f,2)}else if(2===g)a:{g=a;do{for(k=g.next.next;k!==g.prev;){if(l=g.i!==k.i){l=g;n=k;if(r=l.next.i!==n.i&&l.prev.i!==n.i){b:{r=l;do{if(r.i!==l.i&&r.next.i!==l.i&&r.i!==n.i&&r.next.i!==n.i&&di(r,r.next,l,n)){r=!0;break b}r=r.next}while(r!==l);r=!1}r=!r}if(r=r&&ge(l,n)&&ge(n,l)){r=l;h=!1;p=(l.x+n.x)/2;n=(l.y+n.y)/2;do r.y>n!==r.next.y>n&&r.next.y!==r.y&&p<(r.next.x-r.x)*(n-r.y)/(r.next.y-r.y)+r.x&&(h=!h),r=r.next;while(r!==l);r=h}l=r}if(l){a=ei(g,k);g=ee(g,g.next);a=ee(a,
|
|
|
a.next);fe(g,b,c,d,e,f);fe(a,b,c,d,e,f);break a}k=k.next}g=g.next}while(g!==a)}break}}}}function Jk(a,b,c,d){var e=a.prev,f=a.next;if(0<=ta(e,a,f))return!1;var g=e.x>a.x?e.x>f.x?e.x:f.x:a.x>f.x?a.x:f.x,k=e.y>a.y?e.y>f.y?e.y:f.y:a.y>f.y?a.y:f.y,l=ug(e.x<a.x?e.x<f.x?e.x:f.x:a.x<f.x?a.x:f.x,e.y<a.y?e.y<f.y?e.y:f.y:a.y<f.y?a.y:f.y,b,c,d);b=ug(g,k,b,c,d);c=a.prevZ;for(d=a.nextZ;c&&c.z>=l&&d&&d.z<=b;){if(c!==a.prev&&c!==a.next&&Xc(e.x,e.y,a.x,a.y,f.x,f.y,c.x,c.y)&&0<=ta(c.prev,c,c.next))return!1;c=c.prevZ;
|
|
|
if(d!==a.prev&&d!==a.next&&Xc(e.x,e.y,a.x,a.y,f.x,f.y,d.x,d.y)&&0<=ta(d.prev,d,d.next))return!1;d=d.nextZ}for(;c&&c.z>=l;){if(c!==a.prev&&c!==a.next&&Xc(e.x,e.y,a.x,a.y,f.x,f.y,c.x,c.y)&&0<=ta(c.prev,c,c.next))return!1;c=c.prevZ}for(;d&&d.z<=b;){if(d!==a.prev&&d!==a.next&&Xc(e.x,e.y,a.x,a.y,f.x,f.y,d.x,d.y)&&0<=ta(d.prev,d,d.next))return!1;d=d.nextZ}return!0}function Kk(a,b){return a.x-b.x}function Lk(a,b){var c=b,d=a.x,e=a.y,f=-Infinity;do{if(e<=c.y&&e>=c.next.y&&c.next.y!==c.y){var g=c.x+(e-c.y)*
|
|
|
(c.next.x-c.x)/(c.next.y-c.y);if(g<=d&&g>f){f=g;if(g===d){if(e===c.y)return c;if(e===c.next.y)return c.next}var k=c.x<c.next.x?c:c.next}}c=c.next}while(c!==b);if(!k)return null;if(d===f)return k.prev;b=k;g=k.x;var l=k.y,m=Infinity;for(c=k.next;c!==b;){if(d>=c.x&&c.x>=g&&d!==c.x&&Xc(e<l?d:f,e,g,l,e<l?f:d,e,c.x,c.y)){var h=Math.abs(e-c.y)/(d-c.x);(h<m||h===m&&c.x>k.x)&&ge(c,a)&&(k=c,m=h)}c=c.next}return k}function ug(a,b,c,d,e){a=32767*(a-c)*e;b=32767*(b-d)*e;a=(a|a<<8)&16711935;a=(a|a<<4)&252645135;
|
|
|
-a=(a|a<<2)&858993459;b=(b|b<<8)&16711935;b=(b|b<<4)&252645135;b=(b|b<<2)&858993459;return(a|a<<1)&1431655765|((b|b<<1)&1431655765)<<1}function Mk(a){var b=a,c=a;do{if(b.x<c.x||b.x===c.x&&b.y<c.y)c=b;b=b.next}while(b!==a);return c}function Xc(a,b,c,d,e,f,g,k){return 0<=(e-g)*(b-k)-(a-g)*(f-k)&&0<=(a-g)*(d-k)-(c-g)*(b-k)&&0<=(c-g)*(f-k)-(e-g)*(d-k)}function ta(a,b,c){return(b.y-a.y)*(c.x-b.x)-(b.x-a.x)*(c.y-b.y)}function dc(a,b){return a.x===b.x&&a.y===b.y}function ci(a,b,c,d){return dc(a,c)&&dc(b,
|
|
|
-d)||dc(a,d)&&dc(c,b)?!0:0<ta(a,b,c)!==0<ta(a,b,d)&&0<ta(c,d,a)!==0<ta(c,d,b)}function ge(a,b){return 0>ta(a.prev,a,a.next)?0<=ta(a,b,a.next)&&0<=ta(a,a.prev,b):0>ta(a,b,a.prev)||0>ta(a,a.next,b)}function di(a,b){var c=new vg(a.i,a.x,a.y),d=new vg(b.i,b.x,b.y),e=a.next,f=b.prev;a.next=b;b.prev=a;c.next=e;e.prev=c;d.next=c;c.prev=d;f.next=d;d.prev=f;return d}function bi(a,b,c,d){a=new vg(a,b,c);d?(a.next=d.next,a.prev=d,d.next.prev=a,d.next=a):(a.prev=a,a.next=a);return a}function de(a){a.next.prev=
|
|
|
-a.prev;a.prev.next=a.next;a.prevZ&&(a.prevZ.nextZ=a.nextZ);a.nextZ&&(a.nextZ.prevZ=a.prevZ)}function vg(a,b,c){this.i=a;this.x=b;this.y=c;this.nextZ=this.prevZ=this.z=this.next=this.prev=null;this.steiner=!1}function ei(a){var b=a.length;2<b&&a[b-1].equals(a[0])&&a.pop()}function fi(a,b){for(var c=0;c<b.length;c++)a.push(b[c].x),a.push(b[c].y)}function ec(a,b){N.call(this);this.type="ExtrudeGeometry";this.parameters={shapes:a,options:b};this.fromBufferGeometry(new eb(a,b));this.mergeVertices()}function eb(a,
|
|
|
+a=(a|a<<2)&858993459;b=(b|b<<8)&16711935;b=(b|b<<4)&252645135;b=(b|b<<2)&858993459;return(a|a<<1)&1431655765|((b|b<<1)&1431655765)<<1}function Mk(a){var b=a,c=a;do{if(b.x<c.x||b.x===c.x&&b.y<c.y)c=b;b=b.next}while(b!==a);return c}function Xc(a,b,c,d,e,f,g,k){return 0<=(e-g)*(b-k)-(a-g)*(f-k)&&0<=(a-g)*(d-k)-(c-g)*(b-k)&&0<=(c-g)*(f-k)-(e-g)*(d-k)}function ta(a,b,c){return(b.y-a.y)*(c.x-b.x)-(b.x-a.x)*(c.y-b.y)}function dc(a,b){return a.x===b.x&&a.y===b.y}function di(a,b,c,d){return dc(a,c)&&dc(b,
|
|
|
+d)||dc(a,d)&&dc(c,b)?!0:0<ta(a,b,c)!==0<ta(a,b,d)&&0<ta(c,d,a)!==0<ta(c,d,b)}function ge(a,b){return 0>ta(a.prev,a,a.next)?0<=ta(a,b,a.next)&&0<=ta(a,a.prev,b):0>ta(a,b,a.prev)||0>ta(a,a.next,b)}function ei(a,b){var c=new vg(a.i,a.x,a.y),d=new vg(b.i,b.x,b.y),e=a.next,f=b.prev;a.next=b;b.prev=a;c.next=e;e.prev=c;d.next=c;c.prev=d;f.next=d;d.prev=f;return d}function ci(a,b,c,d){a=new vg(a,b,c);d?(a.next=d.next,a.prev=d,d.next.prev=a,d.next=a):(a.prev=a,a.next=a);return a}function de(a){a.next.prev=
|
|
|
+a.prev;a.prev.next=a.next;a.prevZ&&(a.prevZ.nextZ=a.nextZ);a.nextZ&&(a.nextZ.prevZ=a.prevZ)}function vg(a,b,c){this.i=a;this.x=b;this.y=c;this.nextZ=this.prevZ=this.z=this.next=this.prev=null;this.steiner=!1}function fi(a){var b=a.length;2<b&&a[b-1].equals(a[0])&&a.pop()}function gi(a,b){for(var c=0;c<b.length;c++)a.push(b[c].x),a.push(b[c].y)}function ec(a,b){N.call(this);this.type="ExtrudeGeometry";this.parameters={shapes:a,options:b};this.fromBufferGeometry(new eb(a,b));this.mergeVertices()}function eb(a,
|
|
|
b){function c(a){function c(a,b,c){b||console.error("THREE.ExtrudeGeometry: vec does not exist");return b.clone().multiplyScalar(c).add(a)}function g(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,k=d*d+e*e;if(Math.abs(d*g-e*f)>Number.EPSILON){var l=Math.sqrt(k),m=Math.sqrt(f*f+g*g);k=b.x-e/l;b=b.y+d/l;g=((c.x-g/m-k)*g-(c.y+f/m-b)*f)/(d*g-e*f);f=k+d*g-a.x;d=b+e*g-a.y;e=f*f+d*d;if(2>=e)return new v(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(k)):(f=d,d=e,e=Math.sqrt(k/2));return new v(f/e,d/e)}function k(a,b){for(J=a.length;0<=--J;){var c=J;var f=J-1;0>f&&(f=a.length-1);var g,k=D+2*C;for(g=0;g<k;g++){var l=Y*g,m=Y*(g+1),h=b+f+l,p=b+f+m;m=b+c+m;r(b+c+l);r(h);r(m);r(h);r(p);r(m);l=e.length/3;l=F.generateSideWallUV(d,e,l-6,l-3,l-2,l-1);u(l[0]);u(l[1]);u(l[3]);u(l[1]);u(l[2]);u(l[3])}}}function l(a,b,c){y.push(a);y.push(b);y.push(c)}function h(a,b,c){r(a);r(b);
|
|
|
r(c);a=e.length/3;a=F.generateTopUV(d,e,a-3,a-2,a-1);u(a[0]);u(a[1]);u(a[2])}function r(a){e.push(y[3*a]);e.push(y[3*a+1]);e.push(y[3*a+2])}function u(a){f.push(a.x);f.push(a.y)}var y=[],w=void 0!==b.curveSegments?b.curveSegments:12,D=void 0!==b.steps?b.steps:1,da=void 0!==b.depth?b.depth:100,X=void 0!==b.bevelEnabled?b.bevelEnabled:!0,z=void 0!==b.bevelThickness?b.bevelThickness:6,A=void 0!==b.bevelSize?b.bevelSize:z-2,B=void 0!==b.bevelOffset?b.bevelOffset:0,C=void 0!==b.bevelSegments?b.bevelSegments:
|
|
@@ -274,7 +274,7 @@ P),V=a;ha=0;for(M=P.length;ha<M;ha++)Q=P[ha],a=a.concat(Q);var W,Y=a.length,T,ca
|
|
|
R;J++){var S=c(V[J],w[J],W);l(S.x,S.y,-fa)}ha=0;for(M=P.length;ha<M;ha++)for(Q=P[ha],ba=E[ha],J=0,R=Q.length;J<R;J++)S=c(Q[J],ba[J],W),l(S.x,S.y,-fa)}W=A+B;for(J=0;J<Y;J++)S=X?c(a[J],ea[J],W):a[J],G?(N.copy(K.normals[0]).multiplyScalar(S.x),L.copy(K.binormals[0]).multiplyScalar(S.y),O.copy(I[0]).add(N).add(L),l(O.x,O.y,O.z)):l(S.x,S.y,0);for(R=1;R<=D;R++)for(J=0;J<Y;J++)S=X?c(a[J],ea[J],W):a[J],G?(N.copy(K.normals[R]).multiplyScalar(S.x),L.copy(K.binormals[R]).multiplyScalar(S.y),O.copy(I[R]).add(N).add(L),
|
|
|
l(O.x,O.y,O.z)):l(S.x,S.y,da/D*R);for(U=C-1;0<=U;U--){R=U/C;fa=z*Math.cos(R*Math.PI/2);W=A*Math.sin(R*Math.PI/2)+B;J=0;for(R=V.length;J<R;J++)S=c(V[J],w[J],W),l(S.x,S.y,da+fa);ha=0;for(M=P.length;ha<M;ha++)for(Q=P[ha],ba=E[ha],J=0,R=Q.length;J<R;J++)S=c(Q[J],ba[J],W),G?l(S.x,S.y+I[D-1].y,I[D-1].x+fa):l(S.x,S.y,da+fa)}(function(){var a=e.length/3;if(X){var b=0*Y;for(J=0;J<ca;J++)T=Z[J],h(T[2]+b,T[1]+b,T[0]+b);b=Y*(D+2*C);for(J=0;J<ca;J++)T=Z[J],h(T[0]+b,T[1]+b,T[2]+b)}else{for(J=0;J<ca;J++)T=Z[J],
|
|
|
h(T[2],T[1],T[0]);for(J=0;J<ca;J++)T=Z[J],h(T[0]+Y*D,T[1]+Y*D,T[2]+Y*D)}d.addGroup(a,e.length/3-a,0)})();(function(){var a=e.length/3,b=0;k(V,b);b+=V.length;ha=0;for(M=P.length;ha<M;ha++)Q=P[ha],k(Q,b),b+=Q.length;d.addGroup(a,e.length/3-a,1)})()}A.call(this);this.type="ExtrudeBufferGeometry";this.parameters={shapes:a,options:b};a=Array.isArray(a)?a:[a];for(var d=this,e=[],f=[],g=0,k=a.length;g<k;g++)c(a[g]);this.setAttribute("position",new B(e,3));this.setAttribute("uv",new B(f,2));this.computeVertexNormals()}
|
|
|
-function gi(a,b,c){c.shapes=[];if(Array.isArray(a))for(var d=0,e=a.length;d<e;d++)c.shapes.push(a[d].uuid);else c.shapes.push(a.uuid);void 0!==b.extrudePath&&(c.options.extrudePath=b.extrudePath.toJSON());return c}function he(a,b){N.call(this);this.type="TextGeometry";this.parameters={text:a,parameters:b};this.fromBufferGeometry(new Yc(a,b));this.mergeVertices()}function Yc(a,b){b=b||{};var c=b.font;if(!c||!c.isFont)return console.error("THREE.TextGeometry: font parameter is not an instance of THREE.Font."),
|
|
|
+function hi(a,b,c){c.shapes=[];if(Array.isArray(a))for(var d=0,e=a.length;d<e;d++)c.shapes.push(a[d].uuid);else c.shapes.push(a.uuid);void 0!==b.extrudePath&&(c.options.extrudePath=b.extrudePath.toJSON());return c}function he(a,b){N.call(this);this.type="TextGeometry";this.parameters={text:a,parameters:b};this.fromBufferGeometry(new Yc(a,b));this.mergeVertices()}function Yc(a,b){b=b||{};var c=b.font;if(!c||!c.isFont)return console.error("THREE.TextGeometry: font parameter is not an instance of THREE.Font."),
|
|
|
new N;a=c.generateShapes(a,b.size);b.depth=void 0!==b.height?b.height:50;void 0===b.bevelThickness&&(b.bevelThickness=10);void 0===b.bevelSize&&(b.bevelSize=8);void 0===b.bevelEnabled&&(b.bevelEnabled=!1);eb.call(this,a,b);this.type="TextBufferGeometry"}function ie(a,b,c,d,e,f,g){N.call(this);this.type="SphereGeometry";this.parameters={radius:a,widthSegments:b,heightSegments:c,phiStart:d,phiLength:e,thetaStart:f,thetaLength:g};this.fromBufferGeometry(new fc(a,b,c,d,e,f,g));this.mergeVertices()}function fc(a,
|
|
|
b,c,d,e,f,g){A.call(this);this.type="SphereBufferGeometry";this.parameters={radius:a,widthSegments:b,heightSegments:c,phiStart:d,phiLength:e,thetaStart:f,thetaLength:g};a=a||1;b=Math.max(3,Math.floor(b)||8);c=Math.max(2,Math.floor(c)||6);d=void 0!==d?d:0;e=void 0!==e?e:2*Math.PI;f=void 0!==f?f:0;g=void 0!==g?g:Math.PI;var k=Math.min(f+g,Math.PI),l,m,h=0,p=[],q=new n,t=new n,r=[],u=[],y=[],w=[];for(m=0;m<=c;m++){var v=[],da=m/c,X=0;0==m&&0==f?X=.5/b:m==c&&k==Math.PI&&(X=-.5/b);for(l=0;l<=b;l++){var z=
|
|
|
l/b;q.x=-a*Math.cos(d+z*e)*Math.sin(f+da*g);q.y=a*Math.cos(f+da*g);q.z=a*Math.sin(d+z*e)*Math.sin(f+da*g);u.push(q.x,q.y,q.z);t.copy(q).normalize();y.push(t.x,t.y,t.z);w.push(z+X,1-da);v.push(h++)}p.push(v)}for(m=0;m<c;m++)for(l=0;l<b;l++)a=p[m][l+1],d=p[m][l],e=p[m+1][l],g=p[m+1][l+1],(0!==m||0<f)&&r.push(a,d,g),(m!==c-1||k<Math.PI)&&r.push(d,e,g);this.setIndex(r);this.setAttribute("position",new B(u,3));this.setAttribute("normal",new B(y,3));this.setAttribute("uv",new B(w,2))}function je(a,b,c,
|
|
@@ -284,7 +284,7 @@ this.parameters={points:a,segments:b,phiStart:c,phiLength:d};this.fromBufferGeom
|
|
|
l.z),m.x=h/b,m.y=p/(a.length-1),g.push(m.x,m.y)}for(h=0;h<b;h++)for(p=0;p<a.length-1;p++)c=p+h*a.length,k=c+a.length,l=c+a.length+1,m=c+1,e.push(c,k,m),e.push(k,l,m);this.setIndex(e);this.setAttribute("position",new B(f,3));this.setAttribute("uv",new B(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=h=0;h<a.length;h++,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 gc(a,b){N.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 hc(a,b));this.mergeVertices()}function hc(a,b){function c(a){var c,k=e.length/3;a=a.extractPoints(b);var m=a.shape,h=a.holes;!1===rb.isClockWise(m)&&(m=m.reverse());a=0;for(c=h.length;a<c;a++){var x=h[a];
|
|
|
!0===rb.isClockWise(x)&&(h[a]=x.reverse())}var n=rb.triangulateShape(m,h);a=0;for(c=h.length;a<c;a++)x=h[a],m=m.concat(x);a=0;for(c=m.length;a<c;a++)x=m[a],e.push(x.x,x.y,0),f.push(0,0,1),g.push(x.x,x.y);a=0;for(c=n.length;a<c;a++)m=n[a],d.push(m[0]+k,m[1]+k,m[2]+k),l+=3}A.call(this);this.type="ShapeBufferGeometry";this.parameters={shapes:a,curveSegments:b};b=b||12;var d=[],e=[],f=[],g=[],k=0,l=0;if(!1===Array.isArray(a))c(a);else for(var m=0;m<a.length;m++)c(a[m]),this.addGroup(k,l,m),k+=l,l=0;this.setIndex(d);
|
|
|
-this.setAttribute("position",new B(e,3));this.setAttribute("normal",new B(f,3));this.setAttribute("uv",new B(g,2))}function hi(a,b){b.shapes=[];if(Array.isArray(a))for(var c=0,d=a.length;c<d;c++)b.shapes.push(a[c].uuid);else b.shapes.push(a.uuid);return b}function ad(a,b){A.call(this);this.type="EdgesGeometry";this.parameters={thresholdAngle:b};var c=[];b=Math.cos(M.DEG2RAD*(void 0!==b?b:1));var d=[0,0],e={},f=["a","b","c"];if(a.isBufferGeometry){var g=new N;g.fromBufferGeometry(a)}else g=a.clone();
|
|
|
+this.setAttribute("position",new B(e,3));this.setAttribute("normal",new B(f,3));this.setAttribute("uv",new B(g,2))}function ii(a,b){b.shapes=[];if(Array.isArray(a))for(var c=0,d=a.length;c<d;c++)b.shapes.push(a[c].uuid);else b.shapes.push(a.uuid);return b}function ad(a,b){A.call(this);this.type="EdgesGeometry";this.parameters={thresholdAngle:b};var c=[];b=Math.cos(M.DEG2RAD*(void 0!==b?b:1));var d=[0,0],e={},f=["a","b","c"];if(a.isBufferGeometry){var g=new N;g.fromBufferGeometry(a)}else g=a.clone();
|
|
|
g.mergeVertices();g.computeFaceNormals();a=g.vertices;g=g.faces;for(var k=0,l=g.length;k<l;k++)for(var m=g[k],h=0;3>h;h++){var p=m[f[h]];var q=m[f[(h+1)%3]];d[0]=Math.min(p,q);d[1]=Math.max(p,q);p=d[0]+","+d[1];void 0===e[p]?e[p]={index1:d[0],index2:d[1],face1:k,face2:void 0}:e[p].face2=k}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.setAttribute("position",new B(c,3))}function ic(a,b,c,d,
|
|
|
e,f,g,k){N.call(this);this.type="CylinderGeometry";this.parameters={radiusTop:a,radiusBottom:b,height:c,radialSegments:d,heightSegments:e,openEnded:f,thetaStart:g,thetaLength:k};this.fromBufferGeometry(new sb(a,b,c,d,e,f,g,k));this.mergeVertices()}function sb(a,b,c,d,e,f,g,k){function l(c){var e,f=new v,l=new n,x=0,u=!0===c?a:b,D=!0===c?1:-1;var A=r;for(e=1;e<=d;e++)p.push(0,y*D,0),q.push(0,D,0),t.push(.5,.5),r++;var F=r;for(e=0;e<=d;e++){var B=e/d*k+g,C=Math.cos(B);B=Math.sin(B);l.x=u*B;l.y=y*D;
|
|
|
l.z=u*C;p.push(l.x,l.y,l.z);q.push(0,D,0);f.x=.5*C+.5;f.y=.5*B*D+.5;t.push(f.x,f.y);r++}for(e=0;e<d;e++)f=A+e,l=F+e,!0===c?h.push(l,l+1,f):h.push(l+1,l,f),x+=3;m.addGroup(w,x,!0===c?1:2);w+=x}A.call(this);this.type="CylinderBufferGeometry";this.parameters={radiusTop:a,radiusBottom:b,height:c,radialSegments:d,heightSegments:e,openEnded:f,thetaStart:g,thetaLength:k};var m=this;a=void 0!==a?a:1;b=void 0!==b?b:1;c=c||1;d=Math.floor(d)||8;e=Math.floor(e)||1;f=void 0!==f?f:!1;g=void 0!==g?g:0;k=void 0!==
|
|
@@ -304,9 +304,9 @@ c}function We(a,b,c,d){Ka.call(this,a,b,c,d);this._offsetNext=this._weightNext=t
|
|
|
this.setInterpolation(d||this.DefaultInterpolation)}function Ye(a,b,c){ua.call(this,a,b,c)}function Ze(a,b,c,d){ua.call(this,a,b,c,d)}function cd(a,b,c,d){ua.call(this,a,b,c,d)}function $e(a,b,c,d){Ka.call(this,a,b,c,d)}function pe(a,b,c,d){ua.call(this,a,b,c,d)}function af(a,b,c,d){ua.call(this,a,b,c,d)}function dd(a,b,c,d){ua.call(this,a,b,c,d)}function Pa(a,b,c){this.name=a;this.tracks=c;this.duration=void 0!==b?b:-1;this.uuid=M.generateUUID();0>this.duration&&this.resetDuration()}function Ok(a){switch(a.toLowerCase()){case "scalar":case "double":case "float":case "number":case "integer":return cd;
|
|
|
case "vector":case "vector2":case "vector3":case "vector4":return dd;case "color":return Ze;case "quaternion":return pe;case "bool":case "boolean":return Ye;case "string":return af}throw Error("THREE.KeyframeTrack: Unsupported typeName: "+a);}function Pk(a){if(void 0===a.type)throw Error("THREE.KeyframeTrack: track type undefined, can not parse");var b=Ok(a.type);if(void 0===a.times){var c=[],d=[];fa.flattenJSON(a.keys,c,d,"value");a.times=c;a.values=d}return void 0!==b.parse?b.parse(a):new b(a.name,
|
|
|
a.times,a.values,a.interpolation)}function wg(a,b,c){var d=this,e=!1,f=0,g=0,k=void 0,l=[];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)};this.resolveURL=function(a){return k?k(a):a};this.setURLModifier=function(a){k=
|
|
|
-a;return this};this.addHandler=function(a,b){l.push(a,b);return this};this.removeHandler=function(a){a=l.indexOf(a);-1!==a&&l.splice(a,2);return this};this.getHandler=function(a){for(var b=0,c=l.length;b<c;b+=2){var d=l[b],e=l[b+1];d.global&&(d.lastIndex=0);if(d.test(a))return e}return null}}function V(a){this.manager=void 0!==a?a:ii;this.crossOrigin="anonymous";this.resourcePath=this.path=""}function Qa(a){V.call(this,a)}function xg(a){V.call(this,a)}function yg(a){V.call(this,a)}function bf(a){V.call(this,
|
|
|
+a;return this};this.addHandler=function(a,b){l.push(a,b);return this};this.removeHandler=function(a){a=l.indexOf(a);-1!==a&&l.splice(a,2);return this};this.getHandler=function(a){for(var b=0,c=l.length;b<c;b+=2){var d=l[b],e=l[b+1];d.global&&(d.lastIndex=0);if(d.test(a))return e}return null}}function V(a){this.manager=void 0!==a?a:ji;this.crossOrigin="anonymous";this.resourcePath=this.path=""}function Qa(a){V.call(this,a)}function xg(a){V.call(this,a)}function yg(a){V.call(this,a)}function bf(a){V.call(this,
|
|
|
a)}function ed(a){V.call(this,a)}function cf(a){V.call(this,a)}function df(a){V.call(this,a)}function I(){this.type="Curve";this.arcLengthDivisions=200}function La(a,b,c,d,e,f,g,k){I.call(this);this.type="EllipseCurve";this.aX=a||0;this.aY=b||0;this.xRadius=c||1;this.yRadius=d||1;this.aStartAngle=e||0;this.aEndAngle=f||2*Math.PI;this.aClockwise=g||!1;this.aRotation=k||0}function fd(a,b,c,d,e,f){La.call(this,a,b,c,c,d,e,f);this.type="ArcCurve"}function zg(){var a=0,b=0,c=0,d=0;return{initCatmullRom:function(e,
|
|
|
-f,g,k,l){e=l*(g-e);k=l*(k-f);a=f;b=e;c=-3*f+3*g-2*e-k;d=2*f-2*g+e+k},initNonuniformCatmullRom:function(e,f,g,k,l,m,h){e=((f-e)/l-(g-e)/(l+m)+(g-f)/m)*m;k=((g-f)/m-(k-f)/(m+h)+(k-g)/h)*m;a=f;b=e;c=-3*f+3*g-2*e-k;d=2*f-2*g+e+k},calc:function(e){var f=e*e;return a+b*e+c*f+d*f*e}}}function za(a,b,c,d){I.call(this);this.type="CatmullRomCurve3";this.points=a||[];this.closed=b||!1;this.curveType=c||"centripetal";this.tension=d||.5}function ji(a,b,c,d,e){b=.5*(d-b);e=.5*(e-c);var f=a*a;return(2*c-2*d+b+e)*
|
|
|
+f,g,k,l){e=l*(g-e);k=l*(k-f);a=f;b=e;c=-3*f+3*g-2*e-k;d=2*f-2*g+e+k},initNonuniformCatmullRom:function(e,f,g,k,l,m,h){e=((f-e)/l-(g-e)/(l+m)+(g-f)/m)*m;k=((g-f)/m-(k-f)/(m+h)+(k-g)/h)*m;a=f;b=e;c=-3*f+3*g-2*e-k;d=2*f-2*g+e+k},calc:function(e){var f=e*e;return a+b*e+c*f+d*f*e}}}function za(a,b,c,d){I.call(this);this.type="CatmullRomCurve3";this.points=a||[];this.closed=b||!1;this.curveType=c||"centripetal";this.tension=d||.5}function ki(a,b,c,d,e){b=.5*(d-b);e=.5*(e-c);var f=a*a;return(2*c-2*d+b+e)*
|
|
|
a*f+(-3*c+3*d-2*b-e)*f+b*a+c}function qe(a,b,c,d){var e=1-a;return e*e*b+2*(1-a)*a*c+a*a*d}function re(a,b,c,d,e){var f=1-a,g=1-a;return f*f*f*b+3*g*g*a*c+3*(1-a)*a*a*d+a*a*a*e}function Va(a,b,c,d){I.call(this);this.type="CubicBezierCurve";this.v0=a||new v;this.v1=b||new v;this.v2=c||new v;this.v3=d||new v}function gb(a,b,c,d){I.call(this);this.type="CubicBezierCurve3";this.v0=a||new n;this.v1=b||new n;this.v2=c||new n;this.v3=d||new n}function Da(a,b){I.call(this);this.type="LineCurve";this.v1=a||
|
|
|
new v;this.v2=b||new v}function Wa(a,b){I.call(this);this.type="LineCurve3";this.v1=a||new n;this.v2=b||new n}function Xa(a,b,c){I.call(this);this.type="QuadraticBezierCurve";this.v0=a||new v;this.v1=b||new v;this.v2=c||new v}function hb(a,b,c){I.call(this);this.type="QuadraticBezierCurve3";this.v0=a||new n;this.v1=b||new n;this.v2=c||new n}function Ya(a){I.call(this);this.type="SplineCurve";this.points=a||[]}function ub(){I.call(this);this.type="CurvePath";this.curves=[];this.autoClose=!1}function Za(a){ub.call(this);
|
|
|
this.type="Path";this.currentPoint=new v;a&&this.setFromPoints(a)}function Jb(a){Za.call(this,a);this.uuid=M.generateUUID();this.type="Shape";this.holes=[]}function ba(a,b){E.call(this);this.type="Light";this.color=new C(a);this.intensity=void 0!==b?b:1;this.receiveShadow=void 0}function ef(a,b,c){ba.call(this,a,c);this.type="HemisphereLight";this.castShadow=void 0;this.position.copy(E.DefaultUp);this.updateMatrix();this.groundColor=new C(b)}function ib(a){this.camera=a;this.bias=0;this.radius=1;
|
|
@@ -316,15 +316,15 @@ void 0!==c?c:0;this.angle=void 0!==d?d:Math.PI/3;this.penumbra=void 0!==e?e:0;th
|
|
|
this.near=void 0!==e?e:.1;this.far=void 0!==f?f:2E3;this.updateProjectionMatrix()}function jf(){ib.call(this,new gd(-5,5,5,-5,.5,500))}function kf(a,b){ba.call(this,a,b);this.type="DirectionalLight";this.position.copy(E.DefaultUp);this.updateMatrix();this.target=new E;this.shadow=new jf}function lf(a,b){ba.call(this,a,b);this.type="AmbientLight";this.castShadow=void 0}function mf(a,b,c,d){ba.call(this,a,b);this.type="RectAreaLight";this.width=void 0!==c?c:10;this.height=void 0!==d?d:10}function nf(a){V.call(this,
|
|
|
a);this.textures={}}function of(){A.call(this);this.type="InstancedBufferGeometry";this.maxInstancedCount=void 0}function pf(a,b,c,d){"number"===typeof c&&(d=c,c=!1,console.error("THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument."));L.call(this,a,b,c);this.meshPerAttribute=d||1}function qf(a){V.call(this,a)}function rf(a){V.call(this,a)}function Bg(a){"undefined"===typeof createImageBitmap&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported.");
|
|
|
"undefined"===typeof fetch&&console.warn("THREE.ImageBitmapLoader: fetch() not supported.");V.call(this,a);this.options=void 0}function Cg(){this.type="ShapePath";this.color=new C;this.subPaths=[];this.currentPath=null}function Dg(a){this.type="Font";this.data=a}function Eg(a){V.call(this,a)}function sf(a){V.call(this,a)}function tf(){this.coefficients=[];for(var a=0;9>a;a++)this.coefficients.push(new n)}function $a(a,b){ba.call(this,void 0,b);this.sh=void 0!==a?a:new tf}function Fg(a,b,c){$a.call(this,
|
|
|
-void 0,c);a=(new C).set(a);c=(new C).set(b);b=new n(a.r,a.g,a.b);a=new n(c.r,c.g,c.b);c=Math.sqrt(Math.PI);var d=c*Math.sqrt(.75);this.sh.coefficients[0].copy(b).add(a).multiplyScalar(c);this.sh.coefficients[1].copy(b).sub(a).multiplyScalar(d)}function Gg(a,b){$a.call(this,void 0,b);a=(new C).set(a);this.sh.coefficients[0].set(a.r,a.g,a.b).multiplyScalar(2*Math.sqrt(Math.PI))}function ki(){this.type="StereoCamera";this.aspect=1;this.eyeSep=.064;this.cameraL=new ea;this.cameraL.layers.enable(1);this.cameraL.matrixAutoUpdate=
|
|
|
+void 0,c);a=(new C).set(a);c=(new C).set(b);b=new n(a.r,a.g,a.b);a=new n(c.r,c.g,c.b);c=Math.sqrt(Math.PI);var d=c*Math.sqrt(.75);this.sh.coefficients[0].copy(b).add(a).multiplyScalar(c);this.sh.coefficients[1].copy(b).sub(a).multiplyScalar(d)}function Gg(a,b){$a.call(this,void 0,b);a=(new C).set(a);this.sh.coefficients[0].set(a.r,a.g,a.b).multiplyScalar(2*Math.sqrt(Math.PI))}function li(){this.type="StereoCamera";this.aspect=1;this.eyeSep=.064;this.cameraL=new ea;this.cameraL.layers.enable(1);this.cameraL.matrixAutoUpdate=
|
|
|
!1;this.cameraR=new ea;this.cameraR.layers.enable(2);this.cameraR.matrixAutoUpdate=!1;this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}function Hg(a){this.autoStart=void 0!==a?a:!0;this.elapsedTime=this.oldTime=this.startTime=0;this.running=!1}function Ig(){E.call(this);this.type="AudioListener";this.context=Jg.getContext();this.gain=this.context.createGain();this.gain.connect(this.context.destination);this.filter=null;this.timeDelta=0;this._clock=new Hg}function hd(a){E.call(this);
|
|
|
this.type="Audio";this.listener=a;this.context=a.context;this.gain=this.context.createGain();this.gain.connect(a.getInput());this.autoplay=!1;this.buffer=null;this.detune=0;this.loop=!1;this.offset=this.loopEnd=this.loopStart=0;this.duration=void 0;this.playbackRate=1;this.isPlaying=!1;this.hasPlaybackControl=!0;this.sourceType="empty";this._pausedAt=this._startedAt=0;this.filters=[]}function Kg(a){hd.call(this,a);this.panner=this.context.createPanner();this.panner.panningModel="HRTF";this.panner.connect(this.gain)}
|
|
|
-function Lg(a,b){this.analyser=a.context.createAnalyser();this.analyser.fftSize=void 0!==b?b:2048;this.data=new Uint8Array(this.analyser.frequencyBinCount);a.getOutput().connect(this.analyser)}function Mg(a,b,c){this.binding=a;this.valueSize=c;a=Float64Array;switch(b){case "quaternion":b=this._slerp;break;case "string":case "bool":a=Array;b=this._select;break;default:b=this._lerp}this.buffer=new a(4*c);this._mixBufferRegion=b;this.referenceCount=this.useCount=this.cumulativeWeight=0}function li(a,
|
|
|
-b,c){c=c||Aa.parseTrackName(b);this._targetGroup=a;this._bindings=a.subscribe_(b,c)}function Aa(a,b,c){this.path=b;this.parsedPath=c||Aa.parseTrackName(b);this.node=Aa.findNode(a,this.parsedPath.nodeName)||a;this.rootNode=a}function mi(){this.uuid=M.generateUUID();this._objects=Array.prototype.slice.call(arguments);this.nCachedObjects_=0;var a={};this._indicesByUUID=a;for(var b=0,c=arguments.length;b!==c;++b)a[arguments[b].uuid]=b;this._paths=[];this._parsedPaths=[];this._bindings=[];this._bindingsIndicesByPath=
|
|
|
-{};var d=this;this.stats={objects:{get total(){return d._objects.length},get inUse(){return this.total-d.nCachedObjects_}},get bindingsPerObject(){return d._bindings.length}}}function ni(a,b,c){this._mixer=a;this._clip=b;this._localRoot=c||null;a=b.tracks;b=a.length;c=Array(b);for(var d={endingStart:2400,endingEnd:2400},e=0;e!==b;++e){var f=a[e].createInterpolant(null);c[e]=f;f.settings=d}this._interpolantSettings=d;this._interpolants=c;this._propertyBindings=Array(b);this._weightInterpolant=this._timeScaleInterpolant=
|
|
|
+function Lg(a,b){this.analyser=a.context.createAnalyser();this.analyser.fftSize=void 0!==b?b:2048;this.data=new Uint8Array(this.analyser.frequencyBinCount);a.getOutput().connect(this.analyser)}function Mg(a,b,c){this.binding=a;this.valueSize=c;a=Float64Array;switch(b){case "quaternion":b=this._slerp;break;case "string":case "bool":a=Array;b=this._select;break;default:b=this._lerp}this.buffer=new a(4*c);this._mixBufferRegion=b;this.referenceCount=this.useCount=this.cumulativeWeight=0}function mi(a,
|
|
|
+b,c){c=c||Aa.parseTrackName(b);this._targetGroup=a;this._bindings=a.subscribe_(b,c)}function Aa(a,b,c){this.path=b;this.parsedPath=c||Aa.parseTrackName(b);this.node=Aa.findNode(a,this.parsedPath.nodeName)||a;this.rootNode=a}function ni(){this.uuid=M.generateUUID();this._objects=Array.prototype.slice.call(arguments);this.nCachedObjects_=0;var a={};this._indicesByUUID=a;for(var b=0,c=arguments.length;b!==c;++b)a[arguments[b].uuid]=b;this._paths=[];this._parsedPaths=[];this._bindings=[];this._bindingsIndicesByPath=
|
|
|
+{};var d=this;this.stats={objects:{get total(){return d._objects.length},get inUse(){return this.total-d.nCachedObjects_}},get bindingsPerObject(){return d._bindings.length}}}function oi(a,b,c){this._mixer=a;this._clip=b;this._localRoot=c||null;a=b.tracks;b=a.length;c=Array(b);for(var d={endingStart:2400,endingEnd:2400},e=0;e!==b;++e){var f=a[e].createInterpolant(null);c[e]=f;f.settings=d}this._interpolantSettings=d;this._interpolants=c;this._propertyBindings=Array(b);this._weightInterpolant=this._timeScaleInterpolant=
|
|
|
this._byClipCacheIndex=this._cacheIndex=null;this.loop=2201;this._loopCount=-1;this._startTime=null;this.time=0;this._effectiveWeight=this.weight=this._effectiveTimeScale=this.timeScale=1;this.repetitions=Infinity;this.paused=!1;this.enabled=!0;this.clampWhenFinished=!1;this.zeroSlopeAtEnd=this.zeroSlopeAtStart=!0}function Ng(a){this._root=a;this._initMemoryManager();this.time=this._accuIndex=0;this.timeScale=1}function uf(a,b){"string"===typeof a&&(console.warn("THREE.Uniform: Type parameter is no longer needed."),
|
|
|
-a=b);this.value=a}function Og(a,b,c){qb.call(this,a,b);this.meshPerAttribute=c||1}function oi(a,b,c,d){this.ray=new Ub(a,b);this.near=c||0;this.far=d||Infinity;this.camera=null;this.params={Mesh:{},Line:{},LOD:{},Points:{threshold:1},Sprite:{}};Object.defineProperties(this.params,{PointCloud:{get:function(){console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points.");return this.Points}}})}function pi(a,b){return a.distance-b.distance}function Pg(a,b,c,d){if(!1!==a.visible&&
|
|
|
-(a.raycast(b,c),!0===d)){a=a.children;d=0;for(var e=a.length;d<e;d++)Pg(a[d],b,c,!0)}}function qi(a,b,c){this.radius=void 0!==a?a:1;this.phi=void 0!==b?b:0;this.theta=void 0!==c?c:0;return this}function ri(a,b,c){this.radius=void 0!==a?a:1;this.theta=void 0!==b?b:0;this.y=void 0!==c?c:0;return this}function Qg(a,b){this.min=void 0!==a?a:new v(Infinity,Infinity);this.max=void 0!==b?b:new v(-Infinity,-Infinity)}function Rg(a,b){this.start=void 0!==a?a:new n;this.end=void 0!==b?b:new n}function se(a){E.call(this);
|
|
|
+a=b);this.value=a}function Og(a,b,c){qb.call(this,a,b);this.meshPerAttribute=c||1}function Pg(a,b,c,d){this.ray=new Ub(a,b);this.near=c||0;this.far=d||Infinity;this.camera=null;this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}};Object.defineProperties(this.params,{PointCloud:{get:function(){console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points.");return this.Points}}})}function pi(a,b){return a.distance-b.distance}function Qg(a,b,c,d){if(!1!==
|
|
|
+a.visible&&(a.raycast(b,c),!0===d)){a=a.children;d=0;for(var e=a.length;d<e;d++)Qg(a[d],b,c,!0)}}function qi(a,b,c){this.radius=void 0!==a?a:1;this.phi=void 0!==b?b:0;this.theta=void 0!==c?c:0;return this}function ri(a,b,c){this.radius=void 0!==a?a:1;this.theta=void 0!==b?b:0;this.y=void 0!==c?c:0;return this}function Rg(a,b){this.min=void 0!==a?a:new v(Infinity,Infinity);this.max=void 0!==b?b:new v(-Infinity,-Infinity)}function Sg(a,b){this.start=void 0!==a?a:new n;this.end=void 0!==b?b:new n}function se(a){E.call(this);
|
|
|
this.material=a;this.render=function(){}}function id(a,b){E.call(this);this.light=a;this.light.updateMatrixWorld();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;this.color=b;a=new A;b=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(var c=0,d=1;32>c;c++,d++){var e=c/32*Math.PI*2,f=d/32*Math.PI*2;b.push(Math.cos(e),Math.sin(e),1,Math.cos(f),Math.sin(f),1)}a.setAttribute("position",new B(b,3));b=new ja({fog:!1});this.cone=new la(a,b);this.add(this.cone);this.update()}function si(a){var b=
|
|
|
[];a&&a.isBone&&b.push(a);for(var c=0;c<a.children.length;c++)b.push.apply(b,si(a.children[c]));return b}function qc(a){for(var b=si(a),c=new A,d=[],e=[],f=new C(0,0,1),g=new C(0,1,0),k=0;k<b.length;k++){var l=b[k];l.parent&&l.parent.isBone&&(d.push(0,0,0),d.push(0,0,0),e.push(f.r,f.g,f.b),e.push(g.r,g.g,g.b))}c.setAttribute("position",new B(d,3));c.setAttribute("color",new B(e,3));d=new ja({vertexColors:!0,depthTest:!1,depthWrite:!1,transparent:!0});la.call(this,c,d);this.root=a;this.bones=b;this.matrix=
|
|
|
a.matrixWorld;this.matrixAutoUpdate=!1}function jd(a,b,c){this.light=a;this.light.updateMatrixWorld();this.color=c;a=new fc(b,4,2);b=new Na({wireframe:!0,fog:!1});ca.call(this,a,b);this.matrix=this.light.matrixWorld;this.matrixAutoUpdate=!1;this.update()}function kd(a,b,c){E.call(this);this.light=a;this.light.updateMatrixWorld();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;this.color=c;a=new bc(b);a.rotateY(.5*Math.PI);this.material=new Na({wireframe:!0,fog:!1});void 0===this.color&&(this.material.vertexColors=
|
|
@@ -336,16 +336,16 @@ b("f2","f4",l);b("f4","f3",l);b("f3","f1",l);b("n1","f1",l);b("n2","f2",l);b("n3
|
|
|
this.matrixAutoUpdate=!1;this.pointMap=k;this.update()}function ma(a,b,c,d,e,f,g){xf.set(e,f,g).unproject(d);a=b[a];if(void 0!==a)for(c=c.getAttribute("position"),b=0,d=a.length;b<d;b++)c.setXYZ(a[b],xf.x,xf.y,xf.z)}function vb(a,b){this.object=a;void 0===b&&(b=16776960);a=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]);var c=new Float32Array(24),d=new A;d.setIndex(new L(a,1));d.setAttribute("position",new L(c,3));la.call(this,d,new ja({color:b}));this.matrixAutoUpdate=!1;this.update()}
|
|
|
function ue(a,b){this.type="Box3Helper";this.box=a;b=b||16776960;a=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]);var c=new A;c.setIndex(new L(a,1));c.setAttribute("position",new B([1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],3));la.call(this,c,new ja({color:b}));this.geometry.computeBoundingSphere()}function ve(a,b,c){this.type="PlaneHelper";this.plane=a;this.size=void 0===b?1:b;a=void 0!==c?c:16776960;b=new A;b.setAttribute("position",new B([1,-1,1,-1,1,1,-1,
|
|
|
-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,0,0,1,0,0,0],3));b.computeBoundingSphere();Ja.call(this,b,new ja({color:a}));b=new A;b.setAttribute("position",new B([1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1],3));b.computeBoundingSphere();this.add(new ca(b,new Na({color:a,opacity:.2,transparent:!0,depthWrite:!1})))}function wb(a,b,c,d,e,f){E.call(this);void 0===a&&(a=new n(0,0,1));void 0===b&&(b=new n(0,0,0));void 0===c&&(c=1);void 0===d&&(d=16776960);void 0===e&&(e=.2*c);void 0===f&&(f=.2*e);void 0===yf&&
|
|
|
-(yf=new A,yf.setAttribute("position",new B([0,0,0,0,1,0],3)),Sg=new sb(0,.5,1,5,1),Sg.translate(0,-.5,0));this.position.copy(b);this.line=new Ja(yf,new ja({color:d}));this.line.matrixAutoUpdate=!1;this.add(this.line);this.cone=new ca(Sg,new Na({color:d}));this.cone.matrixAutoUpdate=!1;this.add(this.cone);this.setDirection(a);this.setLength(c,e,f)}function we(a){a=a||1;var b=[0,0,0,a,0,0,0,0,0,0,a,0,0,0,0,0,0,a];a=new A;a.setAttribute("position",new B(b,3));a.setAttribute("color",new B([1,0,0,1,.6,
|
|
|
-0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));b=new ja({vertexColors:!0});la.call(this,a,b)}function Tg(a){Y=a;Ug(zf)}function ti(a){var b={magFilter:1003,minFilter:1003,generateMipmaps:!1,type:a?a.type:1009,format:a?a.format:1023,encoding:a?a.encoding:3002,depthBuffer:!1,stencilBuffer:!1},c=ui(b);c.depthBuffer=a?!1:!0;Af=ui(b);return c}function vi(a){Af.dispose();Y.setRenderTarget(Vg);a.scissorTest=!1;a.setSize(a.width,a.height)}function Ug(a){var b=new nb;b.add(new ca(xe[0],a));Y.compile(b,Wg)}function ui(a){a=
|
|
|
-new wa(3*jb,3*jb,a);a.texture.mapping=306;a.texture.name="PMREM.cubeUv";a.scissorTest=!0;return a}function Xg(a,b,c,d,e){a.viewport.set(b,c,d,e);a.scissor.set(b,c,d,e)}function wi(a){var b=Y.autoClear;Y.autoClear=!1;for(var c=1;c<xi;c++)yi(a,c-1,c,Math.sqrt(Bf[c]*Bf[c]-Bf[c-1]*Bf[c-1]),zi[(c-1)%zi.length]);Y.autoClear=b}function yi(a,b,c,d,e){Ai(a,Af,b,c,d,"latitudinal",e);Ai(Af,a,c,c,d,"longitudinal",e)}function Ai(a,b,c,d,e,f,g){"latitudinal"!==f&&"longitudinal"!==f&&console.error("blur direction must be either latitudinal or longitudinal!");
|
|
|
+(yf=new A,yf.setAttribute("position",new B([0,0,0,0,1,0],3)),Tg=new sb(0,.5,1,5,1),Tg.translate(0,-.5,0));this.position.copy(b);this.line=new Ja(yf,new ja({color:d}));this.line.matrixAutoUpdate=!1;this.add(this.line);this.cone=new ca(Tg,new Na({color:d}));this.cone.matrixAutoUpdate=!1;this.add(this.cone);this.setDirection(a);this.setLength(c,e,f)}function we(a){a=a||1;var b=[0,0,0,a,0,0,0,0,0,0,a,0,0,0,0,0,0,a];a=new A;a.setAttribute("position",new B(b,3));a.setAttribute("color",new B([1,0,0,1,.6,
|
|
|
+0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));b=new ja({vertexColors:!0});la.call(this,a,b)}function Ug(a){Y=a;Vg(zf)}function ti(a){var b={magFilter:1003,minFilter:1003,generateMipmaps:!1,type:a?a.type:1009,format:a?a.format:1023,encoding:a?a.encoding:3002,depthBuffer:!1,stencilBuffer:!1},c=ui(b);c.depthBuffer=a?!1:!0;Af=ui(b);return c}function vi(a){Af.dispose();Y.setRenderTarget(Wg);a.scissorTest=!1;a.setSize(a.width,a.height)}function Vg(a){var b=new nb;b.add(new ca(xe[0],a));Y.compile(b,Xg)}function ui(a){a=
|
|
|
+new wa(3*jb,3*jb,a);a.texture.mapping=306;a.texture.name="PMREM.cubeUv";a.scissorTest=!0;return a}function Yg(a,b,c,d,e){a.viewport.set(b,c,d,e);a.scissor.set(b,c,d,e)}function wi(a){var b=Y.autoClear;Y.autoClear=!1;for(var c=1;c<xi;c++)yi(a,c-1,c,Math.sqrt(Bf[c]*Bf[c]-Bf[c-1]*Bf[c-1]),zi[(c-1)%zi.length]);Y.autoClear=b}function yi(a,b,c,d,e){Ai(a,Af,b,c,d,"latitudinal",e);Ai(Af,a,c,c,d,"longitudinal",e)}function Ai(a,b,c,d,e,f,g){"latitudinal"!==f&&"longitudinal"!==f&&console.error("blur direction must be either latitudinal or longitudinal!");
|
|
|
var k=new nb;k.add(new ca(xe[d],zf));var l=zf.uniforms,m=Bi[c]-1;m=isFinite(e)?Math.PI/(2*m):2*Math.PI/39;var h=e/m,p=isFinite(e)?1+Math.floor(3*h):20;20<p&&console.warn("sigmaRadians, "+e+", is too large and will clip, as it requested "+p+" samples when the maximum is set to 20");e=[];for(var q=0,n=0;20>n;++n){var r=n/h;r=Math.exp(-r*r/2);e.push(r);0==n?q+=r:n<p&&(q+=2*r)}for(n=0;n<e.length;n++)e[n]/=q;l.envMap.value=a.texture;l.samples.value=p;l.weights.value=e;l.latitudinal.value="latitudinal"===
|
|
|
-f;g&&(l.poleAxis.value=g);l.dTheta.value=m;l.mipInt.value=8-c;l.inputEncoding.value=kb[a.texture.encoding];l.outputEncoding.value=kb[a.texture.encoding];a=Bi[d];r=3*Math.max(0,jb-2*a);Xg(b,r,(0===d?0:2*jb)+2*a*(4<d?d-8+4:0),3*a,2*a);Y.setRenderTarget(b);Y.render(k,Wg)}function Ci(){var a=new v(1,1);a=new tb({uniforms:{envMap:{value:null},texelSize:{value:a},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Yg(),fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform vec2 texelSize;\n\n"+
|
|
|
-Zg()+"\n\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tvec3 outputDirection = normalize(vOutputDirection);\n\tvec2 uv;\n\tuv.y = asin(clamp(outputDirection.y, -1.0, 1.0)) * RECIPROCAL_PI + 0.5;\n\tuv.x = atan(outputDirection.z, outputDirection.x) * RECIPROCAL_PI2 + 0.5;\n\tvec2 f = fract(uv / texelSize - 0.5);\n\tuv -= f * texelSize;\n\tvec3 tl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x += texelSize.x;\n\tvec3 tr = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.y += texelSize.y;\n\tvec3 br = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x -= texelSize.x;\n\tvec3 bl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tvec3 tm = mix(tl, tr, f.x);\n\tvec3 bm = mix(bl, br, f.x);\n\tgl_FragColor.rgb = mix(tm, bm, f.y);\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
-blending:0,depthTest:!1,depthWrite:!1});a.type="EquirectangularToCubeUV";return a}function Di(){var a=new tb({uniforms:{envMap:{value:null},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Yg(),fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform samplerCube envMap;\n\n"+Zg()+"\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tgl_FragColor.rgb = envMapTexelToLinear(textureCube(envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ))).rgb;\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
-blending:0,depthTest:!1,depthWrite:!1});a.type="CubemapToCubeUV";return a}function Yg(){return"\nprecision mediump float;\nprecision mediump int;\nattribute vec3 position;\nattribute vec2 uv;\nattribute float faceIndex;\nvarying vec3 vOutputDirection;\nvec3 getDirection(vec2 uv, float face) {\n\tuv = 2.0 * uv - 1.0;\n\tvec3 direction = vec3(uv, 1.0);\n\tif (face == 0.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 1.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 3.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.x *= -1.0;\n\t} else if (face == 4.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.y *= -1.0;\n\t} else if (face == 5.0) {\n\t\tdirection.xz *= -1.0;\n\t}\n\treturn direction;\n}\nvoid main() {\n\tvOutputDirection = getDirection(uv, faceIndex);\n\tgl_Position = vec4( position, 1.0 );\n}\n\t"}
|
|
|
-function Zg(){return"\nuniform int inputEncoding;\nuniform int outputEncoding;\n\n#include <encodings_pars_fragment>\n\nvec4 inputTexelToLinear(vec4 value){\n\tif(inputEncoding == 0){\n\t\treturn value;\n\t}else if(inputEncoding == 1){\n\t\treturn sRGBToLinear(value);\n\t}else if(inputEncoding == 2){\n\t\treturn RGBEToLinear(value);\n\t}else if(inputEncoding == 3){\n\t\treturn RGBMToLinear(value, 7.0);\n\t}else if(inputEncoding == 4){\n\t\treturn RGBMToLinear(value, 16.0);\n\t}else if(inputEncoding == 5){\n\t\treturn RGBDToLinear(value, 256.0);\n\t}else{\n\t\treturn GammaToLinear(value, 2.2);\n\t}\n}\n\nvec4 linearToOutputTexel(vec4 value){\n\tif(outputEncoding == 0){\n\t\treturn value;\n\t}else if(outputEncoding == 1){\n\t\treturn LinearTosRGB(value);\n\t}else if(outputEncoding == 2){\n\t\treturn LinearToRGBE(value);\n\t}else if(outputEncoding == 3){\n\t\treturn LinearToRGBM(value, 7.0);\n\t}else if(outputEncoding == 4){\n\t\treturn LinearToRGBM(value, 16.0);\n\t}else if(outputEncoding == 5){\n\t\treturn LinearToRGBD(value, 256.0);\n\t}else{\n\t\treturn LinearToGamma(value, 2.2);\n\t}\n}\n\nvec4 envMapTexelToLinear(vec4 color) {\n\treturn inputTexelToLinear(color);\n}\n\t"}
|
|
|
-function Ei(a){console.warn("THREE.ClosedSplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom";this.closed=!0}function Fi(a){console.warn("THREE.SplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom"}function $g(a){console.warn("THREE.Spline has been removed. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom"}void 0===Number.EPSILON&&(Number.EPSILON=Math.pow(2,
|
|
|
+f;g&&(l.poleAxis.value=g);l.dTheta.value=m;l.mipInt.value=8-c;l.inputEncoding.value=kb[a.texture.encoding];l.outputEncoding.value=kb[a.texture.encoding];a=Bi[d];r=3*Math.max(0,jb-2*a);Yg(b,r,(0===d?0:2*jb)+2*a*(4<d?d-8+4:0),3*a,2*a);Y.setRenderTarget(b);Y.render(k,Xg)}function Ci(){var a=new v(1,1);a=new tb({uniforms:{envMap:{value:null},texelSize:{value:a},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Zg(),fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform vec2 texelSize;\n\n"+
|
|
|
+$g()+"\n\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tvec3 outputDirection = normalize(vOutputDirection);\n\tvec2 uv;\n\tuv.y = asin(clamp(outputDirection.y, -1.0, 1.0)) * RECIPROCAL_PI + 0.5;\n\tuv.x = atan(outputDirection.z, outputDirection.x) * RECIPROCAL_PI2 + 0.5;\n\tvec2 f = fract(uv / texelSize - 0.5);\n\tuv -= f * texelSize;\n\tvec3 tl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x += texelSize.x;\n\tvec3 tr = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.y += texelSize.y;\n\tvec3 br = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x -= texelSize.x;\n\tvec3 bl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tvec3 tm = mix(tl, tr, f.x);\n\tvec3 bm = mix(bl, br, f.x);\n\tgl_FragColor.rgb = mix(tm, bm, f.y);\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
+blending:0,depthTest:!1,depthWrite:!1});a.type="EquirectangularToCubeUV";return a}function Di(){var a=new tb({uniforms:{envMap:{value:null},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Zg(),fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform samplerCube envMap;\n\n"+$g()+"\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tgl_FragColor.rgb = envMapTexelToLinear(textureCube(envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ))).rgb;\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
+blending:0,depthTest:!1,depthWrite:!1});a.type="CubemapToCubeUV";return a}function Zg(){return"\nprecision mediump float;\nprecision mediump int;\nattribute vec3 position;\nattribute vec2 uv;\nattribute float faceIndex;\nvarying vec3 vOutputDirection;\nvec3 getDirection(vec2 uv, float face) {\n\tuv = 2.0 * uv - 1.0;\n\tvec3 direction = vec3(uv, 1.0);\n\tif (face == 0.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 1.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 3.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.x *= -1.0;\n\t} else if (face == 4.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.y *= -1.0;\n\t} else if (face == 5.0) {\n\t\tdirection.xz *= -1.0;\n\t}\n\treturn direction;\n}\nvoid main() {\n\tvOutputDirection = getDirection(uv, faceIndex);\n\tgl_Position = vec4( position, 1.0 );\n}\n\t"}
|
|
|
+function $g(){return"\nuniform int inputEncoding;\nuniform int outputEncoding;\n\n#include <encodings_pars_fragment>\n\nvec4 inputTexelToLinear(vec4 value){\n\tif(inputEncoding == 0){\n\t\treturn value;\n\t}else if(inputEncoding == 1){\n\t\treturn sRGBToLinear(value);\n\t}else if(inputEncoding == 2){\n\t\treturn RGBEToLinear(value);\n\t}else if(inputEncoding == 3){\n\t\treturn RGBMToLinear(value, 7.0);\n\t}else if(inputEncoding == 4){\n\t\treturn RGBMToLinear(value, 16.0);\n\t}else if(inputEncoding == 5){\n\t\treturn RGBDToLinear(value, 256.0);\n\t}else{\n\t\treturn GammaToLinear(value, 2.2);\n\t}\n}\n\nvec4 linearToOutputTexel(vec4 value){\n\tif(outputEncoding == 0){\n\t\treturn value;\n\t}else if(outputEncoding == 1){\n\t\treturn LinearTosRGB(value);\n\t}else if(outputEncoding == 2){\n\t\treturn LinearToRGBE(value);\n\t}else if(outputEncoding == 3){\n\t\treturn LinearToRGBM(value, 7.0);\n\t}else if(outputEncoding == 4){\n\t\treturn LinearToRGBM(value, 16.0);\n\t}else if(outputEncoding == 5){\n\t\treturn LinearToRGBD(value, 256.0);\n\t}else{\n\t\treturn LinearToGamma(value, 2.2);\n\t}\n}\n\nvec4 envMapTexelToLinear(vec4 color) {\n\treturn inputTexelToLinear(color);\n}\n\t"}
|
|
|
+function Ei(a){console.warn("THREE.ClosedSplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom";this.closed=!0}function Fi(a){console.warn("THREE.SplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom"}function ah(a){console.warn("THREE.Spline has been removed. Use THREE.CatmullRomCurve3 instead.");za.call(this,a);this.type="catmullrom"}void 0===Number.EPSILON&&(Number.EPSILON=Math.pow(2,
|
|
|
-52));void 0===Number.isInteger&&(Number.isInteger=function(a){return"number"===typeof a&&isFinite(a)&&Math.floor(a)===a});void 0===Math.sign&&(Math.sign=function(a){return 0>a?-1:0<a?1:+a});!1==="name"in Function.prototype&&Object.defineProperty(Function.prototype,"name",{get:function(){return this.toString().match(/^\s*function\s*([^\(\s]*)/)[1]}});void 0===Object.assign&&(Object.assign=function(a){if(void 0===a||null===a)throw new TypeError("Cannot convert undefined or null to object");for(var b=
|
|
|
Object(a),c=1;c<arguments.length;c++){var d=arguments[c];if(void 0!==d&&null!==d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(b[e]=d[e])}return b});Object.assign(Ea.prototype,{addEventListener:function(a,b){void 0===this._listeners&&(this._listeners={});var c=this._listeners;void 0===c[a]&&(c[a]=[]);-1===c[a].indexOf(b)&&c[a].push(b)},hasEventListener:function(a,b){if(void 0===this._listeners)return!1;var c=this._listeners;return void 0!==c[a]&&-1!==c[a].indexOf(b)},removeEventListener:function(a,
|
|
|
b){void 0!==this._listeners&&(a=this._listeners[a],void 0!==a&&(b=a.indexOf(b),-1!==b&&a.splice(b,1)))},dispatchEvent:function(a){if(void 0!==this._listeners){var b=this._listeners[a.type];if(void 0!==b){a.target=this;b=b.slice(0);for(var c=0,d=b.length;c<d;c++)b[c].call(this,a)}}}});for(var xa=[],ye=0;256>ye;ye++)xa[ye]=(16>ye?"0":"")+ye.toString(16);var M={DEG2RAD:Math.PI/180,RAD2DEG:180/Math.PI,generateUUID:function(){var a=4294967295*Math.random()|0,b=4294967295*Math.random()|0,c=4294967295*Math.random()|
|
|
@@ -396,7 +396,7 @@ a.x*b.y-a.y*b.x);this._w=c;return this.normalize()},angleTo:function(a){return 2
|
|
|
this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var a=this.length();0===a?(this._z=this._y=this._x=0,this._w=1):(a=1/a,this._x*=a,this._y*=a,this._z*=a,this._w*=a);this._onChangeCallback();return this},multiply:function(a,b){return void 0!==b?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(a,
|
|
|
b)):this.multiplyQuaternions(this,a)},premultiply:function(a){return this.multiplyQuaternions(a,this)},multiplyQuaternions:function(a,b){var c=a._x,d=a._y,e=a._z;a=a._w;var f=b._x,g=b._y,k=b._z;b=b._w;this._x=c*b+a*f+d*k-e*g;this._y=d*b+a*g+e*f-c*k;this._z=e*b+a*k+c*g-d*f;this._w=a*b-c*f-d*g-e*k;this._onChangeCallback();return this},slerp:function(a,b){if(0===b)return this;if(1===b)return this.copy(a);var c=this._x,d=this._y,e=this._z,f=this._w,g=f*a._w+c*a._x+d*a._y+e*a._z;0>g?(this._w=-a._w,this._x=
|
|
|
-a._x,this._y=-a._y,this._z=-a._z,g=-g):this.copy(a);if(1<=g)return this._w=f,this._x=c,this._y=d,this._z=e,this;a=1-g*g;if(a<=Number.EPSILON)return g=1-b,this._w=g*f+b*this._w,this._x=g*c+b*this._x,this._y=g*d+b*this._y,this._z=g*e+b*this._z,this.normalize(),this._onChangeCallback(),this;a=Math.sqrt(a);var k=Math.atan2(a,g);g=Math.sin((1-b)*k)/a;b=Math.sin(b*k)/a;this._w=f*g+this._w*b;this._x=c*g+this._x*b;this._y=d*g+this._y*b;this._z=e*g+this._z*b;this._onChangeCallback();return this},equals:function(a){return a._x===
|
|
|
-this._x&&a._y===this._y&&a._z===this._z&&a._w===this._w},fromArray:function(a,b){void 0===b&&(b=0);this._x=a[b];this._y=a[b+1];this._z=a[b+2];this._w=a[b+3];this._onChangeCallback();return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this._x;a[b+1]=this._y;a[b+2]=this._z;a[b+3]=this._w;return a},_onChange:function(a){this._onChangeCallback=a;return this},_onChangeCallback:function(){}});var ah=new n,Gi=new Ca;Object.assign(n.prototype,{isVector3:!0,set:function(a,b,c){this.x=
|
|
|
+this._x&&a._y===this._y&&a._z===this._z&&a._w===this._w},fromArray:function(a,b){void 0===b&&(b=0);this._x=a[b];this._y=a[b+1];this._z=a[b+2];this._w=a[b+3];this._onChangeCallback();return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this._x;a[b+1]=this._y;a[b+2]=this._z;a[b+3]=this._w;return a},_onChange:function(a){this._onChangeCallback=a;return this},_onChangeCallback:function(){}});var bh=new n,Gi=new Ca;Object.assign(n.prototype,{isVector3:!0,set:function(a,b,c){this.x=
|
|
|
a;this.y=b;this.z=c;return this},setScalar:function(a){this.z=this.y=this.x=a;return this},setX:function(a){this.x=a;return this},setY:function(a){this.y=a;return this},setZ:function(a){this.z=a;return this},setComponent:function(a,b){switch(a){case 0:this.x=b;break;case 1:this.y=b;break;case 2:this.z=b;break;default:throw Error("index is out of range: "+a);}return this},getComponent:function(a){switch(a){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error("index is out of range: "+
|
|
|
a);}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(a){this.x=a.x;this.y=a.y;this.z=a.z;return this},add:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(a,b);this.x+=a.x;this.y+=a.y;this.z+=a.z;return this},addScalar:function(a){this.x+=a;this.y+=a;this.z+=a;return this},addVectors:function(a,b){this.x=a.x+b.x;this.y=a.y+b.y;this.z=a.z+b.z;return this},addScaledVector:function(a,
|
|
|
b){this.x+=a.x*b;this.y+=a.y*b;this.z+=a.z*b;return this},sub:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(a,b);this.x-=a.x;this.y-=a.y;this.z-=a.z;return this},subScalar:function(a){this.x-=a;this.y-=a;this.z-=a;return this},subVectors:function(a,b){this.x=a.x-b.x;this.y=a.y-b.y;this.z=a.z-b.z;return this},multiply:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),
|
|
@@ -408,7 +408,7 @@ this.y=Math.max(a.y,Math.min(b.y,this.y));this.z=Math.max(a.z,Math.min(b.z,this.
|
|
|
Math.ceil(this.x);this.y=Math.ceil(this.y);this.z=Math.ceil(this.z);return this},round:function(){this.x=Math.round(this.x);this.y=Math.round(this.y);this.z=Math.round(this.z);return this},roundToZero:function(){this.x=0>this.x?Math.ceil(this.x):Math.floor(this.x);this.y=0>this.y?Math.ceil(this.y):Math.floor(this.y);this.z=0>this.z?Math.ceil(this.z):Math.floor(this.z);return this},negate:function(){this.x=-this.x;this.y=-this.y;this.z=-this.z;return this},dot:function(a){return this.x*a.x+this.y*
|
|
|
a.y+this.z*a.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(a){return this.normalize().multiplyScalar(a)},lerp:function(a,b){this.x+=(a.x-this.x)*b;this.y+=(a.y-this.y)*b;this.z+=(a.z-this.z)*b;return this},lerpVectors:function(a,
|
|
|
b,c){return this.subVectors(b,a).multiplyScalar(c).add(a)},cross:function(a,b){return void 0!==b?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(a,b)):this.crossVectors(this,a)},crossVectors:function(a,b){var c=a.x,d=a.y;a=a.z;var e=b.x,f=b.y;b=b.z;this.x=d*b-a*f;this.y=a*e-c*b;this.z=c*f-d*e;return this},projectOnVector:function(a){var b=a.lengthSq();if(0===b)return this.set(0,0,0);b=a.dot(this)/b;return this.copy(a).multiplyScalar(b)},
|
|
|
-projectOnPlane:function(a){ah.copy(this).projectOnVector(a);return this.sub(ah)},reflect:function(a){return this.sub(ah.copy(a).multiplyScalar(2*this.dot(a)))},angleTo:function(a){var b=Math.sqrt(this.lengthSq()*a.lengthSq());if(0===b)return Math.PI/2;a=this.dot(a)/b;return Math.acos(M.clamp(a,-1,1))},distanceTo:function(a){return Math.sqrt(this.distanceToSquared(a))},distanceToSquared:function(a){var b=this.x-a.x,c=this.y-a.y;a=this.z-a.z;return b*b+c*c+a*a},manhattanDistanceTo:function(a){return Math.abs(this.x-
|
|
|
+projectOnPlane:function(a){bh.copy(this).projectOnVector(a);return this.sub(bh)},reflect:function(a){return this.sub(bh.copy(a).multiplyScalar(2*this.dot(a)))},angleTo:function(a){var b=Math.sqrt(this.lengthSq()*a.lengthSq());if(0===b)return Math.PI/2;a=this.dot(a)/b;return Math.acos(M.clamp(a,-1,1))},distanceTo:function(a){return Math.sqrt(this.distanceToSquared(a))},distanceToSquared:function(a){var b=this.x-a.x,c=this.y-a.y;a=this.z-a.z;return b*b+c*c+a*a},manhattanDistanceTo:function(a){return Math.abs(this.x-
|
|
|
a.x)+Math.abs(this.y-a.y)+Math.abs(this.z-a.z)},setFromSpherical:function(a){return this.setFromSphericalCoords(a.radius,a.phi,a.theta)},setFromSphericalCoords:function(a,b,c){var d=Math.sin(b)*a;this.x=d*Math.sin(c);this.y=Math.cos(b)*a;this.z=d*Math.cos(c);return this},setFromCylindrical:function(a){return this.setFromCylindricalCoords(a.radius,a.theta,a.y)},setFromCylindricalCoords:function(a,b,c){this.x=a*Math.sin(b);this.y=c;this.z=a*Math.cos(b);return this},setFromMatrixPosition:function(a){a=
|
|
|
a.elements;this.x=a[12];this.y=a[13];this.z=a[14];return this},setFromMatrixScale:function(a){var b=this.setFromMatrixColumn(a,0).length(),c=this.setFromMatrixColumn(a,1).length();a=this.setFromMatrixColumn(a,2).length();this.x=b;this.y=c;this.z=a;return this},setFromMatrixColumn:function(a,b){return this.fromArray(a.elements,4*b)},setFromMatrix3Column:function(a,b){return this.fromArray(a.elements,3*b)},equals:function(a){return a.x===this.x&&a.y===this.y&&a.z===this.z},fromArray:function(a,b){void 0===
|
|
|
b&&(b=0);this.x=a[b];this.y=a[b+1];this.z=a[b+2];return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this.x;a[b+1]=this.y;a[b+2]=this.z;return a},fromBufferAttribute:function(a,b,c){void 0!==c&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute().");this.x=a.getX(b);this.y=a.getY(b);this.z=a.getZ(b);return this}});var nd=new n,Q=new P,Qk=new n(0,0,0),Rk=new n(1,1,1),Lb=new n,Cf=new n,ka=new n;Object.assign(P.prototype,{isMatrix4:!0,set:function(a,
|
|
@@ -466,24 +466,24 @@ this.max.y,this.max.z).applyMatrix4(a);yb[4].set(this.max.x,this.min.y,this.min.
|
|
|
b){this.center.copy(a);this.radius=b;return this},setFromPoints:function(a,b){var c=this.center;void 0!==b?c.copy(b):Wk.setFromPoints(a).getCenter(c);for(var d=b=0,e=a.length;d<e;d++)b=Math.max(b,c.distanceToSquared(a[d]));this.radius=Math.sqrt(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.center.copy(a.center);this.radius=a.radius;return this},empty:function(){return 0>=this.radius},containsPoint:function(a){return a.distanceToSquared(this.center)<=
|
|
|
this.radius*this.radius},distanceToPoint:function(a){return a.distanceTo(this.center)-this.radius},intersectsSphere:function(a){var b=this.radius+a.radius;return a.center.distanceToSquared(this.center)<=b*b},intersectsBox:function(a){return a.intersectsSphere(this)},intersectsPlane:function(a){return Math.abs(a.distanceToPoint(this.center))<=this.radius},clampPoint:function(a,b){var c=this.center.distanceToSquared(a);void 0===b&&(console.warn("THREE.Sphere: .clampPoint() target is now required"),
|
|
|
b=new n);b.copy(a);c>this.radius*this.radius&&(b.sub(this.center).normalize(),b.multiplyScalar(this.radius).add(this.center));return b},getBoundingBox:function(a){void 0===a&&(console.warn("THREE.Sphere: .getBoundingBox() target is now required"),a=new Ra);a.set(this.center,this.center);a.expandByScalar(this.radius);return a},applyMatrix4:function(a){this.center.applyMatrix4(a);this.radius*=a.getMaxScaleOnAxis();return this},translate:function(a){this.center.add(a);return this},equals:function(a){return a.center.equals(this.center)&&
|
|
|
-a.radius===this.radius}});var zb=new n,bh=new n,Hf=new n,Ob=new n,ch=new n,If=new n,dh=new n;Object.assign(Ub.prototype,{set:function(a,b){this.origin.copy(a);this.direction.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.origin.copy(a.origin);this.direction.copy(a.direction);return this},at:function(a,b){void 0===b&&(console.warn("THREE.Ray: .at() target is now required"),b=new n);return b.copy(this.direction).multiplyScalar(a).add(this.origin)},
|
|
|
+a.radius===this.radius}});var zb=new n,ch=new n,Hf=new n,Ob=new n,dh=new n,If=new n,eh=new n;Object.assign(Ub.prototype,{set:function(a,b){this.origin.copy(a);this.direction.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.origin.copy(a.origin);this.direction.copy(a.direction);return this},at:function(a,b){void 0===b&&(console.warn("THREE.Ray: .at() target is now required"),b=new n);return b.copy(this.direction).multiplyScalar(a).add(this.origin)},
|
|
|
lookAt:function(a){this.direction.copy(a).sub(this.origin).normalize();return this},recast:function(a){this.origin.copy(this.at(a,zb));return this},closestPointToPoint:function(a,b){void 0===b&&(console.warn("THREE.Ray: .closestPointToPoint() target is now required"),b=new n);b.subVectors(a,this.origin);a=b.dot(this.direction);return 0>a?b.copy(this.origin):b.copy(this.direction).multiplyScalar(a).add(this.origin)},distanceToPoint:function(a){return Math.sqrt(this.distanceSqToPoint(a))},distanceSqToPoint:function(a){var b=
|
|
|
-zb.subVectors(a,this.origin).dot(this.direction);if(0>b)return this.origin.distanceToSquared(a);zb.copy(this.direction).multiplyScalar(b).add(this.origin);return zb.distanceToSquared(a)},distanceSqToSegment:function(a,b,c,d){bh.copy(a).add(b).multiplyScalar(.5);Hf.copy(b).sub(a).normalize();Ob.copy(this.origin).sub(bh);var e=.5*a.distanceTo(b),f=-this.direction.dot(Hf),g=Ob.dot(this.direction),k=-Ob.dot(Hf),l=Ob.lengthSq(),h=Math.abs(1-f*f);if(0<h){a=f*k-g;b=f*g-k;var n=e*h;0<=a?b>=-n?b<=n?(e=1/h,
|
|
|
-a*=e,b*=e,f=a*(a+f*b+2*g)+b*(f*a+b+2*k)+l):(b=e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l):(b=-e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l):b<=-n?(a=Math.max(0,-(-f*e+g)),b=0<a?-e:Math.min(Math.max(-e,-k),e),f=-a*a+b*(b+2*k)+l):b<=n?(a=0,b=Math.min(Math.max(-e,-k),e),f=b*(b+2*k)+l):(a=Math.max(0,-(f*e+g)),b=0<a?e:Math.min(Math.max(-e,-k),e),f=-a*a+b*(b+2*k)+l)}else b=0<f?-e:e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l;c&&c.copy(this.direction).multiplyScalar(a).add(this.origin);d&&d.copy(Hf).multiplyScalar(b).add(bh);
|
|
|
+zb.subVectors(a,this.origin).dot(this.direction);if(0>b)return this.origin.distanceToSquared(a);zb.copy(this.direction).multiplyScalar(b).add(this.origin);return zb.distanceToSquared(a)},distanceSqToSegment:function(a,b,c,d){ch.copy(a).add(b).multiplyScalar(.5);Hf.copy(b).sub(a).normalize();Ob.copy(this.origin).sub(ch);var e=.5*a.distanceTo(b),f=-this.direction.dot(Hf),g=Ob.dot(this.direction),k=-Ob.dot(Hf),l=Ob.lengthSq(),h=Math.abs(1-f*f);if(0<h){a=f*k-g;b=f*g-k;var n=e*h;0<=a?b>=-n?b<=n?(e=1/h,
|
|
|
+a*=e,b*=e,f=a*(a+f*b+2*g)+b*(f*a+b+2*k)+l):(b=e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l):(b=-e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l):b<=-n?(a=Math.max(0,-(-f*e+g)),b=0<a?-e:Math.min(Math.max(-e,-k),e),f=-a*a+b*(b+2*k)+l):b<=n?(a=0,b=Math.min(Math.max(-e,-k),e),f=b*(b+2*k)+l):(a=Math.max(0,-(f*e+g)),b=0<a?e:Math.min(Math.max(-e,-k),e),f=-a*a+b*(b+2*k)+l)}else b=0<f?-e:e,a=Math.max(0,-(f*b+g)),f=-a*a+b*(b+2*k)+l;c&&c.copy(this.direction).multiplyScalar(a).add(this.origin);d&&d.copy(Hf).multiplyScalar(b).add(ch);
|
|
|
return f},intersectSphere:function(a,b){zb.subVectors(a.center,this.origin);var c=zb.dot(this.direction),d=zb.dot(zb)-c*c;a=a.radius*a.radius;if(d>a)return null;a=Math.sqrt(a-d);d=c-a;c+=a;return 0>d&&0>c?null:0>d?this.at(c,b):this.at(d,b)},intersectsSphere:function(a){return this.distanceSqToPoint(a.center)<=a.radius*a.radius},distanceToPlane:function(a){var b=a.normal.dot(this.direction);if(0===b)return 0===a.distanceToPoint(this.origin)?0:null;a=-(this.origin.dot(a.normal)+a.constant)/b;return 0<=
|
|
|
a?a:null},intersectPlane:function(a,b){a=this.distanceToPlane(a);return null===a?null:this.at(a,b)},intersectsPlane:function(a){var b=a.distanceToPoint(this.origin);return 0===b||0>a.normal.dot(this.direction)*b?!0:!1},intersectBox:function(a,b){var c=1/this.direction.x;var d=1/this.direction.y;var e=1/this.direction.z,f=this.origin;if(0<=c){var g=(a.min.x-f.x)*c;c*=a.max.x-f.x}else g=(a.max.x-f.x)*c,c*=a.min.x-f.x;if(0<=d){var k=(a.min.y-f.y)*d;d*=a.max.y-f.y}else k=(a.max.y-f.y)*d,d*=a.min.y-f.y;
|
|
|
-if(g>d||k>c)return null;if(k>g||g!==g)g=k;if(d<c||c!==c)c=d;0<=e?(k=(a.min.z-f.z)*e,a=(a.max.z-f.z)*e):(k=(a.max.z-f.z)*e,a=(a.min.z-f.z)*e);if(g>a||k>c)return null;if(k>g||g!==g)g=k;if(a<c||c!==c)c=a;return 0>c?null:this.at(0<=g?g:c,b)},intersectsBox:function(a){return null!==this.intersectBox(a,zb)},intersectTriangle:function(a,b,c,d,e){ch.subVectors(b,a);If.subVectors(c,a);dh.crossVectors(ch,If);b=this.direction.dot(dh);if(0<b){if(d)return null;d=1}else if(0>b)d=-1,b=-b;else return null;Ob.subVectors(this.origin,
|
|
|
-a);a=d*this.direction.dot(If.crossVectors(Ob,If));if(0>a)return null;c=d*this.direction.dot(ch.cross(Ob));if(0>c||a+c>b)return null;a=-d*Ob.dot(dh);return 0>a?null:this.at(a/b,e)},applyMatrix4:function(a){this.origin.applyMatrix4(a);this.direction.transformDirection(a);return this},equals:function(a){return a.origin.equals(this.origin)&&a.direction.equals(this.direction)}});var eh=new n,Xk=new n,Yk=new ya;Object.assign(Sa.prototype,{isPlane:!0,set:function(a,b){this.normal.copy(a);this.constant=b;
|
|
|
-return this},setComponents:function(a,b,c,d){this.normal.set(a,b,c);this.constant=d;return this},setFromNormalAndCoplanarPoint:function(a,b){this.normal.copy(a);this.constant=-b.dot(this.normal);return this},setFromCoplanarPoints:function(a,b,c){b=eh.subVectors(c,b).cross(Xk.subVectors(a,b)).normalize();this.setFromNormalAndCoplanarPoint(b,a);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.normal.copy(a.normal);this.constant=a.constant;return this},normalize:function(){var a=
|
|
|
+if(g>d||k>c)return null;if(k>g||g!==g)g=k;if(d<c||c!==c)c=d;0<=e?(k=(a.min.z-f.z)*e,a=(a.max.z-f.z)*e):(k=(a.max.z-f.z)*e,a=(a.min.z-f.z)*e);if(g>a||k>c)return null;if(k>g||g!==g)g=k;if(a<c||c!==c)c=a;return 0>c?null:this.at(0<=g?g:c,b)},intersectsBox:function(a){return null!==this.intersectBox(a,zb)},intersectTriangle:function(a,b,c,d,e){dh.subVectors(b,a);If.subVectors(c,a);eh.crossVectors(dh,If);b=this.direction.dot(eh);if(0<b){if(d)return null;d=1}else if(0>b)d=-1,b=-b;else return null;Ob.subVectors(this.origin,
|
|
|
+a);a=d*this.direction.dot(If.crossVectors(Ob,If));if(0>a)return null;c=d*this.direction.dot(dh.cross(Ob));if(0>c||a+c>b)return null;a=-d*Ob.dot(eh);return 0>a?null:this.at(a/b,e)},applyMatrix4:function(a){this.origin.applyMatrix4(a);this.direction.transformDirection(a);return this},equals:function(a){return a.origin.equals(this.origin)&&a.direction.equals(this.direction)}});var fh=new n,Xk=new n,Yk=new ya;Object.assign(Sa.prototype,{isPlane:!0,set:function(a,b){this.normal.copy(a);this.constant=b;
|
|
|
+return this},setComponents:function(a,b,c,d){this.normal.set(a,b,c);this.constant=d;return this},setFromNormalAndCoplanarPoint:function(a,b){this.normal.copy(a);this.constant=-b.dot(this.normal);return this},setFromCoplanarPoints:function(a,b,c){b=fh.subVectors(c,b).cross(Xk.subVectors(a,b)).normalize();this.setFromNormalAndCoplanarPoint(b,a);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.normal.copy(a.normal);this.constant=a.constant;return this},normalize:function(){var a=
|
|
|
1/this.normal.length();this.normal.multiplyScalar(a);this.constant*=a;return this},negate:function(){this.constant*=-1;this.normal.negate();return this},distanceToPoint:function(a){return this.normal.dot(a)+this.constant},distanceToSphere:function(a){return this.distanceToPoint(a.center)-a.radius},projectPoint:function(a,b){void 0===b&&(console.warn("THREE.Plane: .projectPoint() target is now required"),b=new n);return b.copy(this.normal).multiplyScalar(-this.distanceToPoint(a)).add(a)},intersectLine:function(a,
|
|
|
-b){void 0===b&&(console.warn("THREE.Plane: .intersectLine() target is now required"),b=new n);var c=a.delta(eh),d=this.normal.dot(c);if(0===d){if(0===this.distanceToPoint(a.start))return b.copy(a.start)}else if(d=-(a.start.dot(this.normal)+this.constant)/d,!(0>d||1<d))return b.copy(c).multiplyScalar(d).add(a.start)},intersectsLine:function(a){var b=this.distanceToPoint(a.start);a=this.distanceToPoint(a.end);return 0>b&&0<a||0>a&&0<b},intersectsBox:function(a){return a.intersectsPlane(this)},intersectsSphere:function(a){return a.intersectsPlane(this)},
|
|
|
-coplanarPoint:function(a){void 0===a&&(console.warn("THREE.Plane: .coplanarPoint() target is now required"),a=new n);return a.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(a,b){b=b||Yk.getNormalMatrix(a);a=this.coplanarPoint(eh).applyMatrix4(a);b=this.normal.applyMatrix3(b).normalize();this.constant=-a.dot(b);return this},translate:function(a){this.constant-=a.dot(this.normal);return this},equals:function(a){return a.normal.equals(this.normal)&&a.constant===this.constant}});
|
|
|
-var ab=new n,Ab=new n,fh=new n,Bb=new n,sd=new n,td=new n,Ni=new n,gh=new n,hh=new n,ih=new n;Object.assign(na,{getNormal:function(a,b,c,d){void 0===d&&(console.warn("THREE.Triangle: .getNormal() target is now required"),d=new n);d.subVectors(c,b);ab.subVectors(a,b);d.cross(ab);a=d.lengthSq();return 0<a?d.multiplyScalar(1/Math.sqrt(a)):d.set(0,0,0)},getBarycoord:function(a,b,c,d,e){ab.subVectors(d,b);Ab.subVectors(c,b);fh.subVectors(a,b);a=ab.dot(ab);b=ab.dot(Ab);c=ab.dot(fh);var f=Ab.dot(Ab);d=Ab.dot(fh);
|
|
|
+b){void 0===b&&(console.warn("THREE.Plane: .intersectLine() target is now required"),b=new n);var c=a.delta(fh),d=this.normal.dot(c);if(0===d){if(0===this.distanceToPoint(a.start))return b.copy(a.start)}else if(d=-(a.start.dot(this.normal)+this.constant)/d,!(0>d||1<d))return b.copy(c).multiplyScalar(d).add(a.start)},intersectsLine:function(a){var b=this.distanceToPoint(a.start);a=this.distanceToPoint(a.end);return 0>b&&0<a||0>a&&0<b},intersectsBox:function(a){return a.intersectsPlane(this)},intersectsSphere:function(a){return a.intersectsPlane(this)},
|
|
|
+coplanarPoint:function(a){void 0===a&&(console.warn("THREE.Plane: .coplanarPoint() target is now required"),a=new n);return a.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(a,b){b=b||Yk.getNormalMatrix(a);a=this.coplanarPoint(fh).applyMatrix4(a);b=this.normal.applyMatrix3(b).normalize();this.constant=-a.dot(b);return this},translate:function(a){this.constant-=a.dot(this.normal);return this},equals:function(a){return a.normal.equals(this.normal)&&a.constant===this.constant}});
|
|
|
+var ab=new n,Ab=new n,gh=new n,Bb=new n,sd=new n,td=new n,Ni=new n,hh=new n,ih=new n,jh=new n;Object.assign(na,{getNormal:function(a,b,c,d){void 0===d&&(console.warn("THREE.Triangle: .getNormal() target is now required"),d=new n);d.subVectors(c,b);ab.subVectors(a,b);d.cross(ab);a=d.lengthSq();return 0<a?d.multiplyScalar(1/Math.sqrt(a)):d.set(0,0,0)},getBarycoord:function(a,b,c,d,e){ab.subVectors(d,b);Ab.subVectors(c,b);gh.subVectors(a,b);a=ab.dot(ab);b=ab.dot(Ab);c=ab.dot(gh);var f=Ab.dot(Ab);d=Ab.dot(gh);
|
|
|
var g=a*f-b*b;void 0===e&&(console.warn("THREE.Triangle: .getBarycoord() target is now required"),e=new n);if(0===g)return e.set(-2,-1,-1);g=1/g;f=(f*c-b*d)*g;a=(a*d-b*c)*g;return e.set(1-f-a,a,f)},containsPoint:function(a,b,c,d){na.getBarycoord(a,b,c,d,Bb);return 0<=Bb.x&&0<=Bb.y&&1>=Bb.x+Bb.y},getUV:function(a,b,c,d,e,f,g,k){this.getBarycoord(a,b,c,d,Bb);k.set(0,0);k.addScaledVector(e,Bb.x);k.addScaledVector(f,Bb.y);k.addScaledVector(g,Bb.z);return k},isFrontFacing:function(a,b,c,d){ab.subVectors(c,
|
|
|
b);Ab.subVectors(a,b);return 0>ab.cross(Ab).dot(d)?!0:!1}});Object.assign(na.prototype,{set:function(a,b,c){this.a.copy(a);this.b.copy(b);this.c.copy(c);return this},setFromPointsAndIndices:function(a,b,c,d){this.a.copy(a[b]);this.b.copy(a[c]);this.c.copy(a[d]);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.a.copy(a.a);this.b.copy(a.b);this.c.copy(a.c);return this},getArea:function(){ab.subVectors(this.c,this.b);Ab.subVectors(this.a,this.b);return.5*ab.cross(Ab).length()},
|
|
|
getMidpoint:function(a){void 0===a&&(console.warn("THREE.Triangle: .getMidpoint() target is now required"),a=new n);return a.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},getNormal:function(a){return na.getNormal(this.a,this.b,this.c,a)},getPlane:function(a){void 0===a&&(console.warn("THREE.Triangle: .getPlane() target is now required"),a=new Sa);return a.setFromCoplanarPoints(this.a,this.b,this.c)},getBarycoord:function(a,b){return na.getBarycoord(a,this.a,this.b,this.c,b)},getUV:function(a,
|
|
|
-b,c,d,e){return na.getUV(a,this.a,this.b,this.c,b,c,d,e)},containsPoint:function(a){return na.containsPoint(a,this.a,this.b,this.c)},isFrontFacing:function(a){return na.isFrontFacing(this.a,this.b,this.c,a)},intersectsBox:function(a){return a.intersectsTriangle(this)},closestPointToPoint:function(a,b){void 0===b&&(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),b=new n);var c=this.a,d=this.b,e=this.c;sd.subVectors(d,c);td.subVectors(e,c);gh.subVectors(a,c);var f=sd.dot(gh),
|
|
|
-g=td.dot(gh);if(0>=f&&0>=g)return b.copy(c);hh.subVectors(a,d);var k=sd.dot(hh),l=td.dot(hh);if(0<=k&&l<=k)return b.copy(d);var h=f*l-k*g;if(0>=h&&0<=f&&0>=k)return d=f/(f-k),b.copy(c).addScaledVector(sd,d);ih.subVectors(a,e);a=sd.dot(ih);var x=td.dot(ih);if(0<=x&&a<=x)return b.copy(e);f=a*g-f*x;if(0>=f&&0<=g&&0>=x)return h=g/(g-x),b.copy(c).addScaledVector(td,h);g=k*x-a*l;if(0>=g&&0<=l-k&&0<=a-x)return Ni.subVectors(e,d),h=(l-k)/(l-k+(a-x)),b.copy(d).addScaledVector(Ni,h);e=1/(g+f+h);d=f*e;h*=e;
|
|
|
+b,c,d,e){return na.getUV(a,this.a,this.b,this.c,b,c,d,e)},containsPoint:function(a){return na.containsPoint(a,this.a,this.b,this.c)},isFrontFacing:function(a){return na.isFrontFacing(this.a,this.b,this.c,a)},intersectsBox:function(a){return a.intersectsTriangle(this)},closestPointToPoint:function(a,b){void 0===b&&(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),b=new n);var c=this.a,d=this.b,e=this.c;sd.subVectors(d,c);td.subVectors(e,c);hh.subVectors(a,c);var f=sd.dot(hh),
|
|
|
+g=td.dot(hh);if(0>=f&&0>=g)return b.copy(c);ih.subVectors(a,d);var k=sd.dot(ih),l=td.dot(ih);if(0<=k&&l<=k)return b.copy(d);var h=f*l-k*g;if(0>=h&&0<=f&&0>=k)return d=f/(f-k),b.copy(c).addScaledVector(sd,d);jh.subVectors(a,e);a=sd.dot(jh);var x=td.dot(jh);if(0<=x&&a<=x)return b.copy(e);f=a*g-f*x;if(0>=f&&0<=g&&0>=x)return h=g/(g-x),b.copy(c).addScaledVector(td,h);g=k*x-a*l;if(0>=g&&0<=l-k&&0<=a-x)return Ni.subVectors(e,d),h=(l-k)/(l-k+(a-x)),b.copy(d).addScaledVector(Ni,h);e=1/(g+f+h);d=f*e;h*=e;
|
|
|
return b.copy(c).addScaledVector(sd,d).addScaledVector(td,h)},equals:function(a){return a.a.equals(this.a)&&a.b.equals(this.b)&&a.c.equals(this.c)}});var Oi={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,
|
|
|
darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,
|
|
|
fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,
|
|
@@ -522,19 +522,19 @@ c;b++)T.x=this.getX(b),T.y=this.getY(b),T.z=this.getZ(b),T.applyMatrix3(a),this.
|
|
|
c=this.count;b<c;b++)T.x=this.getX(b),T.y=this.getY(b),T.z=this.getZ(b),T.transformDirection(a),this.setXYZ(b,T.x,T.y,T.z);return this},set:function(a,b){void 0===b&&(b=0);this.array.set(a,b);return this},getX:function(a){return this.array[a*this.itemSize]},setX:function(a,b){this.array[a*this.itemSize]=b;return this},getY:function(a){return this.array[a*this.itemSize+1]},setY:function(a,b){this.array[a*this.itemSize+1]=b;return this},getZ:function(a){return this.array[a*this.itemSize+2]},setZ:function(a,
|
|
|
b){this.array[a*this.itemSize+2]=b;return this},getW:function(a){return this.array[a*this.itemSize+3]},setW:function(a,b){this.array[a*this.itemSize+3]=b;return this},setXY:function(a,b,c){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;return this},setXYZ:function(a,b,c,d){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;this.array[a+2]=d;return this},setXYZW:function(a,b,c,d,e){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;this.array[a+2]=d;this.array[a+3]=e;return this},onUpload:function(a){this.onUploadCallback=
|
|
|
a;return this},clone:function(){return(new this.constructor(this.array,this.itemSize)).copy(this)},toJSON:function(){return{itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized}}});Ad.prototype=Object.create(L.prototype);Ad.prototype.constructor=Ad;Bd.prototype=Object.create(L.prototype);Bd.prototype.constructor=Bd;Cd.prototype=Object.create(L.prototype);Cd.prototype.constructor=Cd;Dd.prototype=Object.create(L.prototype);Dd.prototype.constructor=
|
|
|
-Dd;Vb.prototype=Object.create(L.prototype);Vb.prototype.constructor=Vb;Ed.prototype=Object.create(L.prototype);Ed.prototype.constructor=Ed;Wb.prototype=Object.create(L.prototype);Wb.prototype.constructor=Wb;B.prototype=Object.create(L.prototype);B.prototype.constructor=B;Fd.prototype=Object.create(L.prototype);Fd.prototype.constructor=Fd;Object.assign(wh.prototype,{computeGroups:function(a){var b=[],c=void 0;a=a.faces;for(var d=0;d<a.length;d++){var e=a[d];if(e.materialIndex!==c){c=e.materialIndex;
|
|
|
+Dd;Vb.prototype=Object.create(L.prototype);Vb.prototype.constructor=Vb;Ed.prototype=Object.create(L.prototype);Ed.prototype.constructor=Ed;Wb.prototype=Object.create(L.prototype);Wb.prototype.constructor=Wb;B.prototype=Object.create(L.prototype);B.prototype.constructor=B;Fd.prototype=Object.create(L.prototype);Fd.prototype.constructor=Fd;Object.assign(xh.prototype,{computeGroups:function(a){var b=[],c=void 0;a=a.faces;for(var d=0;d<a.length;d++){var e=a[d];if(e.materialIndex!==c){c=e.materialIndex;
|
|
|
void 0!==f&&(f.count=3*d-f.start,b.push(f));var f={start:3*d,materialIndex:c}}}void 0!==f&&(f.count=3*d-f.start,b.push(f));this.groups=b},fromGeometry:function(a){var b=a.faces,c=a.vertices,d=a.faceVertexUvs,e=d[0]&&0<d[0].length,f=d[1]&&0<d[1].length,g=a.morphTargets,k=g.length;if(0<k){var l=[];for(var h=0;h<k;h++)l[h]={name:g[h].name,data:[]};this.morphTargets.position=l}var n=a.morphNormals,p=n.length;if(0<p){var q=[];for(h=0;h<p;h++)q[h]={name:n[h].name,data:[]};this.morphTargets.normal=q}var t=
|
|
|
a.skinIndices,r=a.skinWeights,u=t.length===c.length,y=r.length===c.length;0<c.length&&0===b.length&&console.error("THREE.DirectGeometry: Faceless geometries are not supported.");for(h=0;h<b.length;h++){var w=b[h];this.vertices.push(c[w.a],c[w.b],c[w.c]);var D=w.vertexNormals;3===D.length?this.normals.push(D[0],D[1],D[2]):(D=w.normal,this.normals.push(D,D,D));D=w.vertexColors;3===D.length?this.colors.push(D[0],D[1],D[2]):(D=w.color,this.colors.push(D,D,D));!0===e&&(D=d[0][h],void 0!==D?this.uvs.push(D[0],
|
|
|
D[1],D[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv ",h),this.uvs.push(new v,new v,new v)));!0===f&&(D=d[1][h],void 0!==D?this.uvs2.push(D[0],D[1],D[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 ",h),this.uvs2.push(new v,new v,new v)));for(D=0;D<k;D++){var A=g[D].vertices;l[D].data.push(A[w.a],A[w.b],A[w.c])}for(D=0;D<p;D++)A=n[D].vertexNormals[h],q[D].data.push(A.a,A.b,A.c);u&&this.skinIndices.push(t[w.a],t[w.b],t[w.c]);y&&this.skinWeights.push(r[w.a],
|
|
|
-r[w.b],r[w.c])}this.computeGroups(a);this.verticesNeedUpdate=a.verticesNeedUpdate;this.normalsNeedUpdate=a.normalsNeedUpdate;this.colorsNeedUpdate=a.colorsNeedUpdate;this.uvsNeedUpdate=a.uvsNeedUpdate;this.groupsNeedUpdate=a.groupsNeedUpdate;null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());return this}});var rj=1,lb=new P,jh=new E,ud=new n,Ma=new Ra,Ce=new Ra,U=new n;A.prototype=Object.assign(Object.create(Ea.prototype),
|
|
|
-{constructor:A,isBufferGeometry:!0,getIndex:function(){return this.index},setIndex:function(a){Array.isArray(a)?this.index=new (65535<xh(a)?Wb:Vb)(a,1):this.index=a},getAttribute:function(a){return this.attributes[a]},setAttribute:function(a,b){this.attributes[a]=b;return this},deleteAttribute:function(a){delete this.attributes[a];return this},addGroup:function(a,b,c){this.groups.push({start:a,count:b,materialIndex:void 0!==c?c:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(a,b){this.drawRange.start=
|
|
|
+r[w.b],r[w.c])}this.computeGroups(a);this.verticesNeedUpdate=a.verticesNeedUpdate;this.normalsNeedUpdate=a.normalsNeedUpdate;this.colorsNeedUpdate=a.colorsNeedUpdate;this.uvsNeedUpdate=a.uvsNeedUpdate;this.groupsNeedUpdate=a.groupsNeedUpdate;null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());return this}});var rj=1,lb=new P,kh=new E,ud=new n,Ma=new Ra,Ce=new Ra,U=new n;A.prototype=Object.assign(Object.create(Ea.prototype),
|
|
|
+{constructor:A,isBufferGeometry:!0,getIndex:function(){return this.index},setIndex:function(a){Array.isArray(a)?this.index=new (65535<yh(a)?Wb:Vb)(a,1):this.index=a},getAttribute:function(a){return this.attributes[a]},setAttribute:function(a,b){this.attributes[a]=b;return this},deleteAttribute:function(a){delete this.attributes[a];return this},addGroup:function(a,b,c){this.groups.push({start:a,count:b,materialIndex:void 0!==c?c:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(a,b){this.drawRange.start=
|
|
|
a;this.drawRange.count=b},applyMatrix4:function(a){var b=this.attributes.position;void 0!==b&&(b.applyMatrix4(a),b.needsUpdate=!0);b=this.attributes.normal;if(void 0!==b){var c=(new ya).getNormalMatrix(a);b.applyNormalMatrix(c);b.needsUpdate=!0}b=this.attributes.tangent;void 0!==b&&(b.transformDirection(a),b.needsUpdate=!0);null!==this.boundingBox&&this.computeBoundingBox();null!==this.boundingSphere&&this.computeBoundingSphere();return this},rotateX:function(a){lb.makeRotationX(a);this.applyMatrix4(lb);
|
|
|
-return this},rotateY:function(a){lb.makeRotationY(a);this.applyMatrix4(lb);return this},rotateZ:function(a){lb.makeRotationZ(a);this.applyMatrix4(lb);return this},translate:function(a,b,c){lb.makeTranslation(a,b,c);this.applyMatrix4(lb);return this},scale:function(a,b,c){lb.makeScale(a,b,c);this.applyMatrix4(lb);return this},lookAt:function(a){jh.lookAt(a);jh.updateMatrix();this.applyMatrix4(jh.matrix);return this},center:function(){this.computeBoundingBox();this.boundingBox.getCenter(ud).negate();
|
|
|
+return this},rotateY:function(a){lb.makeRotationY(a);this.applyMatrix4(lb);return this},rotateZ:function(a){lb.makeRotationZ(a);this.applyMatrix4(lb);return this},translate:function(a,b,c){lb.makeTranslation(a,b,c);this.applyMatrix4(lb);return this},scale:function(a,b,c){lb.makeScale(a,b,c);this.applyMatrix4(lb);return this},lookAt:function(a){kh.lookAt(a);kh.updateMatrix();this.applyMatrix4(kh.matrix);return this},center:function(){this.computeBoundingBox();this.boundingBox.getCenter(ud).negate();
|
|
|
this.translate(ud.x,ud.y,ud.z);return this},setFromObject:function(a){var b=a.geometry;if(a.isPoints||a.isLine){a=new B(3*b.vertices.length,3);var c=new B(3*b.colors.length,3);this.setAttribute("position",a.copyVector3sArray(b.vertices));this.setAttribute("color",c.copyColorsArray(b.colors));b.lineDistances&&b.lineDistances.length===b.vertices.length&&(a=new B(b.lineDistances.length,1),this.setAttribute("lineDistance",a.copyArray(b.lineDistances)));null!==b.boundingSphere&&(this.boundingSphere=b.boundingSphere.clone());
|
|
|
null!==b.boundingBox&&(this.boundingBox=b.boundingBox.clone())}else a.isMesh&&b&&b.isGeometry&&this.fromGeometry(b);return this},setFromPoints:function(a){for(var b=[],c=0,d=a.length;c<d;c++){var e=a[c];b.push(e.x,e.y,e.z||0)}this.setAttribute("position",new B(b,3));return this},updateFromObject:function(a){var b=a.geometry;if(a.isMesh){var c=b.__directGeometry;!0===b.elementsNeedUpdate&&(c=void 0,b.elementsNeedUpdate=!1);if(void 0===c)return this.fromGeometry(b);c.verticesNeedUpdate=b.verticesNeedUpdate;
|
|
|
c.normalsNeedUpdate=b.normalsNeedUpdate;c.colorsNeedUpdate=b.colorsNeedUpdate;c.uvsNeedUpdate=b.uvsNeedUpdate;c.groupsNeedUpdate=b.groupsNeedUpdate;b.verticesNeedUpdate=!1;b.normalsNeedUpdate=!1;b.colorsNeedUpdate=!1;b.uvsNeedUpdate=!1;b.groupsNeedUpdate=!1;b=c}!0===b.verticesNeedUpdate&&(c=this.attributes.position,void 0!==c&&(c.copyVector3sArray(b.vertices),c.needsUpdate=!0),b.verticesNeedUpdate=!1);!0===b.normalsNeedUpdate&&(c=this.attributes.normal,void 0!==c&&(c.copyVector3sArray(b.normals),
|
|
|
c.needsUpdate=!0),b.normalsNeedUpdate=!1);!0===b.colorsNeedUpdate&&(c=this.attributes.color,void 0!==c&&(c.copyColorsArray(b.colors),c.needsUpdate=!0),b.colorsNeedUpdate=!1);b.uvsNeedUpdate&&(c=this.attributes.uv,void 0!==c&&(c.copyVector2sArray(b.uvs),c.needsUpdate=!0),b.uvsNeedUpdate=!1);b.lineDistancesNeedUpdate&&(c=this.attributes.lineDistance,void 0!==c&&(c.copyArray(b.lineDistances),c.needsUpdate=!0),b.lineDistancesNeedUpdate=!1);b.groupsNeedUpdate&&(b.computeGroups(a.geometry),this.groups=
|
|
|
-b.groups,b.groupsNeedUpdate=!1);return this},fromGeometry:function(a){a.__directGeometry=(new wh).fromGeometry(a);return this.fromDirectGeometry(a.__directGeometry)},fromDirectGeometry:function(a){var b=new Float32Array(3*a.vertices.length);this.setAttribute("position",(new L(b,3)).copyVector3sArray(a.vertices));0<a.normals.length&&(b=new Float32Array(3*a.normals.length),this.setAttribute("normal",(new L(b,3)).copyVector3sArray(a.normals)));0<a.colors.length&&(b=new Float32Array(3*a.colors.length),
|
|
|
+b.groups,b.groupsNeedUpdate=!1);return this},fromGeometry:function(a){a.__directGeometry=(new xh).fromGeometry(a);return this.fromDirectGeometry(a.__directGeometry)},fromDirectGeometry:function(a){var b=new Float32Array(3*a.vertices.length);this.setAttribute("position",(new L(b,3)).copyVector3sArray(a.vertices));0<a.normals.length&&(b=new Float32Array(3*a.normals.length),this.setAttribute("normal",(new L(b,3)).copyVector3sArray(a.normals)));0<a.colors.length&&(b=new Float32Array(3*a.colors.length),
|
|
|
this.setAttribute("color",(new L(b,3)).copyColorsArray(a.colors)));0<a.uvs.length&&(b=new Float32Array(2*a.uvs.length),this.setAttribute("uv",(new L(b,2)).copyVector2sArray(a.uvs)));0<a.uvs2.length&&(b=new Float32Array(2*a.uvs2.length),this.setAttribute("uv2",(new L(b,2)).copyVector2sArray(a.uvs2)));this.groups=a.groups;for(var c in a.morphTargets){b=[];for(var d=a.morphTargets[c],e=0,f=d.length;e<f;e++){var g=d[e],k=new B(3*g.data.length,3);k.name=g.name;b.push(k.copyVector3sArray(g.data))}this.morphAttributes[c]=
|
|
|
b}0<a.skinIndices.length&&(c=new B(4*a.skinIndices.length,4),this.setAttribute("skinIndex",c.copyVector4sArray(a.skinIndices)));0<a.skinWeights.length&&(c=new B(4*a.skinWeights.length,4),this.setAttribute("skinWeight",c.copyVector4sArray(a.skinWeights)));null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());return this},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new Ra);var a=this.attributes.position,
|
|
|
b=this.morphAttributes.position;if(void 0!==a){if(this.boundingBox.setFromBufferAttribute(a),b){a=0;for(var c=b.length;a<c;a++)Ma.setFromBufferAttribute(b[a]),this.morphTargetsRelative?(U.addVectors(this.boundingBox.min,Ma.min),this.boundingBox.expandByPoint(U),U.addVectors(this.boundingBox.max,Ma.max),this.boundingBox.expandByPoint(U)):(this.boundingBox.expandByPoint(Ma.min),this.boundingBox.expandByPoint(Ma.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||
|
|
@@ -548,15 +548,15 @@ this;var b=new A,c=this.index.array,d=this.attributes,e;for(e in d){var f=d[e];f
|
|
|
this.uuid;a.type=this.type;""!==this.name&&(a.name=this.name);0<Object.keys(this.userData).length&&(a.userData=this.userData);if(void 0!==this.parameters){var b=this.parameters;for(h in b)void 0!==b[h]&&(a[h]=b[h]);return a}a.data={attributes:{}};b=this.index;null!==b&&(a.data.index={type:b.array.constructor.name,array:Array.prototype.slice.call(b.array)});var c=this.attributes;for(h in c){b=c[h];var d=b.toJSON();""!==b.name&&(d.name=b.name);a.data.attributes[h]=d}c={};var e=!1;for(h in this.morphAttributes){for(var f=
|
|
|
this.morphAttributes[h],g=[],k=0,l=f.length;k<l;k++)b=f[k],d=b.toJSON(),""!==b.name&&(d.name=b.name),g.push(d);0<g.length&&(c[h]=g,e=!0)}e&&(a.data.morphAttributes=c,a.data.morphTargetsRelative=this.morphTargetsRelative);var h=this.groups;0<h.length&&(a.data.groups=JSON.parse(JSON.stringify(h)));h=this.boundingSphere;null!==h&&(a.data.boundingSphere={center:h.center.toArray(),radius:h.radius});return a},clone:function(){return(new A).copy(this)},copy:function(a){var b;this.index=null;this.attributes=
|
|
|
{};this.morphAttributes={};this.groups=[];this.boundingSphere=this.boundingBox=null;this.name=a.name;var c=a.index;null!==c&&this.setIndex(c.clone());c=a.attributes;for(g in c)this.setAttribute(g,c[g].clone());var d=a.morphAttributes;for(g in d){var e=[],f=d[g];c=0;for(b=f.length;c<b;c++)e.push(f[c].clone());this.morphAttributes[g]=e}this.morphTargetsRelative=a.morphTargetsRelative;var g=a.groups;c=0;for(b=g.length;c<b;c++)d=g[c],this.addGroup(d.start,d.count,d.materialIndex);g=a.boundingBox;null!==
|
|
|
-g&&(this.boundingBox=g.clone());g=a.boundingSphere;null!==g&&(this.boundingSphere=g.clone());this.drawRange.start=a.drawRange.start;this.drawRange.count=a.drawRange.count;this.userData=a.userData;return this},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Pi=new P,sc=new Ub,kh=new ob,Xb=new n,Yb=new n,Zb=new n,eg=new n,fg=new n,gg=new n,Ke=new n,Le=new n,Me=new n,Bc=new v,Cc=new v,Dc=new v,Gd=new n,Ie=new n;ca.prototype=Object.assign(Object.create(E.prototype),{constructor:ca,isMesh:!0,
|
|
|
+g&&(this.boundingBox=g.clone());g=a.boundingSphere;null!==g&&(this.boundingSphere=g.clone());this.drawRange.start=a.drawRange.start;this.drawRange.count=a.drawRange.count;this.userData=a.userData;return this},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Pi=new P,sc=new Ub,lh=new ob,Xb=new n,Yb=new n,Zb=new n,eg=new n,fg=new n,gg=new n,Ke=new n,Le=new n,Me=new n,Bc=new v,Cc=new v,Dc=new v,Gd=new n,Ie=new n;ca.prototype=Object.assign(Object.create(E.prototype),{constructor:ca,isMesh:!0,
|
|
|
copy:function(a){E.prototype.copy.call(this,a);void 0!==a.morphTargetInfluences&&(this.morphTargetInfluences=a.morphTargetInfluences.slice());void 0!==a.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},a.morphTargetDictionary));return this},updateMorphTargets:function(){var a=this.geometry;if(a.isBufferGeometry){a=a.morphAttributes;var b=Object.keys(a);if(0<b.length){var c=a[b[0]];if(void 0!==c)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},a=0,b=c.length;a<b;a++){var d=
|
|
|
-c[a].name||String(a);this.morphTargetInfluences.push(0);this.morphTargetDictionary[d]=a}}}else a=a.morphTargets,void 0!==a&&0<a.length&&console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")},raycast:function(a,b){var c=this.geometry,d=this.material,e=this.matrixWorld;if(void 0!==d&&(null===c.boundingSphere&&c.computeBoundingSphere(),kh.copy(c.boundingSphere),kh.applyMatrix4(e),!1!==a.ray.intersectsSphere(kh)&&(Pi.getInverse(e),sc.copy(a.ray).applyMatrix4(Pi),
|
|
|
+c[a].name||String(a);this.morphTargetInfluences.push(0);this.morphTargetDictionary[d]=a}}}else a=a.morphTargets,void 0!==a&&0<a.length&&console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")},raycast:function(a,b){var c=this.geometry,d=this.material,e=this.matrixWorld;if(void 0!==d&&(null===c.boundingSphere&&c.computeBoundingSphere(),lh.copy(c.boundingSphere),lh.applyMatrix4(e),!1!==a.ray.intersectsSphere(lh)&&(Pi.getInverse(e),sc.copy(a.ray).applyMatrix4(Pi),
|
|
|
null===c.boundingBox||!1!==sc.intersectsBox(c.boundingBox))))if(c.isBufferGeometry){var f=c.index;e=c.attributes.position;var g=c.morphAttributes.position,k=c.morphTargetsRelative,l=c.attributes.uv,h=c.attributes.uv2,n=c.groups,p=c.drawRange,q,t;if(null!==f)if(Array.isArray(d)){var r=0;for(q=n.length;r<q;r++){var u=n[r];var y=d[u.materialIndex];var w=Math.max(u.start,p.start);for(t=c=Math.min(u.start+u.count,p.start+p.count);w<t;w+=3){c=f.getX(w);var D=f.getX(w+1);var A=f.getX(w+2);if(c=Je(this,y,
|
|
|
a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(w/3),c.face.materialIndex=u.materialIndex,b.push(c)}}}else for(w=Math.max(0,p.start),c=Math.min(f.count,p.start+p.count),r=w,q=c;r<q;r+=3){if(c=f.getX(r),D=f.getX(r+1),A=f.getX(r+2),c=Je(this,d,a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(r/3),b.push(c)}else if(void 0!==e)if(Array.isArray(d))for(r=0,q=n.length;r<q;r++)for(u=n[r],y=d[u.materialIndex],w=Math.max(u.start,p.start),t=c=Math.min(u.start+u.count,p.start+p.count);w<t;w+=3){if(c=w,D=w+1,A=w+2,c=
|
|
|
-Je(this,y,a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(w/3),c.face.materialIndex=u.materialIndex,b.push(c)}else for(w=Math.max(0,p.start),c=Math.min(e.count,p.start+p.count),r=w,q=c;r<q;r+=3)if(c=r,D=r+1,A=r+2,c=Je(this,d,a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(r/3),b.push(c)}else if(c.isGeometry)for(e=Array.isArray(d),g=c.vertices,k=c.faces,c=c.faceVertexUvs[0],0<c.length&&(f=c),p=0,r=k.length;p<r;p++)if(q=k[p],c=e?d[q.materialIndex]:d,void 0!==c&&(l=g[q.a],h=g[q.b],n=g[q.c],c=yh(this,c,a,sc,
|
|
|
-l,h,n,Gd)))f&&f[p]&&(u=f[p],Bc.copy(u[0]),Cc.copy(u[1]),Dc.copy(u[2]),c.uv=na.getUV(Gd,l,h,n,Bc,Cc,Dc,new v)),c.face=q,c.faceIndex=p,b.push(c)},clone:function(){return(new this.constructor(this.geometry,this.material)).copy(this)}});var sj=0,mb=new P,lh=new E,Kf=new n;N.prototype=Object.assign(Object.create(Ea.prototype),{constructor:N,isGeometry:!0,applyMatrix4:function(a){for(var b=(new ya).getNormalMatrix(a),c=0,d=this.vertices.length;c<d;c++)this.vertices[c].applyMatrix4(a);c=0;for(d=this.faces.length;c<
|
|
|
+Je(this,y,a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(w/3),c.face.materialIndex=u.materialIndex,b.push(c)}else for(w=Math.max(0,p.start),c=Math.min(e.count,p.start+p.count),r=w,q=c;r<q;r+=3)if(c=r,D=r+1,A=r+2,c=Je(this,d,a,sc,e,g,k,l,h,c,D,A))c.faceIndex=Math.floor(r/3),b.push(c)}else if(c.isGeometry)for(e=Array.isArray(d),g=c.vertices,k=c.faces,c=c.faceVertexUvs[0],0<c.length&&(f=c),p=0,r=k.length;p<r;p++)if(q=k[p],c=e?d[q.materialIndex]:d,void 0!==c&&(l=g[q.a],h=g[q.b],n=g[q.c],c=zh(this,c,a,sc,
|
|
|
+l,h,n,Gd)))f&&f[p]&&(u=f[p],Bc.copy(u[0]),Cc.copy(u[1]),Dc.copy(u[2]),c.uv=na.getUV(Gd,l,h,n,Bc,Cc,Dc,new v)),c.face=q,c.faceIndex=p,b.push(c)},clone:function(){return(new this.constructor(this.geometry,this.material)).copy(this)}});var sj=0,mb=new P,mh=new E,Kf=new n;N.prototype=Object.assign(Object.create(Ea.prototype),{constructor:N,isGeometry:!0,applyMatrix4:function(a){for(var b=(new ya).getNormalMatrix(a),c=0,d=this.vertices.length;c<d;c++)this.vertices[c].applyMatrix4(a);c=0;for(d=this.faces.length;c<
|
|
|
d;c++){a=this.faces[c];a.normal.applyMatrix3(b).normalize();for(var e=0,f=a.vertexNormals.length;e<f;e++)a.vertexNormals[e].applyMatrix3(b).normalize()}null!==this.boundingBox&&this.computeBoundingBox();null!==this.boundingSphere&&this.computeBoundingSphere();this.normalsNeedUpdate=this.verticesNeedUpdate=!0;return this},rotateX:function(a){mb.makeRotationX(a);this.applyMatrix4(mb);return this},rotateY:function(a){mb.makeRotationY(a);this.applyMatrix4(mb);return this},rotateZ:function(a){mb.makeRotationZ(a);
|
|
|
-this.applyMatrix4(mb);return this},translate:function(a,b,c){mb.makeTranslation(a,b,c);this.applyMatrix4(mb);return this},scale:function(a,b,c){mb.makeScale(a,b,c);this.applyMatrix4(mb);return this},lookAt:function(a){lh.lookAt(a);lh.updateMatrix();this.applyMatrix4(lh.matrix);return this},fromBufferGeometry:function(a){function b(a,b,d,e){var f=void 0===k?[]:[c.colors[a].clone(),c.colors[b].clone(),c.colors[d].clone()],m=void 0===g?[]:[(new n).fromArray(g,3*a),(new n).fromArray(g,3*b),(new n).fromArray(g,
|
|
|
+this.applyMatrix4(mb);return this},translate:function(a,b,c){mb.makeTranslation(a,b,c);this.applyMatrix4(mb);return this},scale:function(a,b,c){mb.makeScale(a,b,c);this.applyMatrix4(mb);return this},lookAt:function(a){mh.lookAt(a);mh.updateMatrix();this.applyMatrix4(mh.matrix);return this},fromBufferGeometry:function(a){function b(a,b,d,e){var f=void 0===k?[]:[c.colors[a].clone(),c.colors[b].clone(),c.colors[d].clone()],m=void 0===g?[]:[(new n).fromArray(g,3*a),(new n).fromArray(g,3*b),(new n).fromArray(g,
|
|
|
3*d)];e=new Ac(a,b,d,m,f,e);c.faces.push(e);void 0!==l&&c.faceVertexUvs[0].push([(new v).fromArray(l,2*a),(new v).fromArray(l,2*b),(new v).fromArray(l,2*d)]);void 0!==h&&c.faceVertexUvs[1].push([(new v).fromArray(h,2*a),(new v).fromArray(h,2*b),(new v).fromArray(h,2*d)])}var c=this,d=null!==a.index?a.index.array:void 0,e=a.attributes;if(void 0===e.position)return console.error("THREE.Geometry.fromBufferGeometry(): Position attribute required for conversion."),this;var f=e.position.array,g=void 0!==
|
|
|
e.normal?e.normal.array:void 0,k=void 0!==e.color?e.color.array:void 0,l=void 0!==e.uv?e.uv.array:void 0,h=void 0!==e.uv2?e.uv2.array:void 0;void 0!==h&&(this.faceVertexUvs[1]=[]);for(e=0;e<f.length;e+=3)c.vertices.push((new n).fromArray(f,e)),void 0!==k&&c.colors.push((new C).fromArray(k,e));var x=a.groups;if(0<x.length)for(e=0;e<x.length;e++){f=x[e];var p=f.start,q=p;for(p+=f.count;q<p;q+=3)void 0!==d?b(d[q],d[q+1],d[q+2],f.materialIndex):b(q,q+1,q+2,f.materialIndex)}else if(void 0!==d)for(e=0;e<
|
|
|
d.length;e+=3)b(d[e],d[e+1],d[e+2]);else for(e=0;e<f.length/3;e+=3)b(e,e+1,e+2);this.computeFaceNormals();null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());return this},center:function(){this.computeBoundingBox();this.boundingBox.getCenter(Kf).negate();this.translate(Kf.x,Kf.y,Kf.z);return this},normalize:function(){this.computeBoundingSphere();var a=this.boundingSphere.center,b=this.boundingSphere.radius;b=0===b?
|
|
@@ -578,9 +578,9 @@ u&&(u=this.faceVertexUvs[0][g],k.push(d(u[0]),d(u[1]),d(u[2])));y&&k.push(b(r.no
|
|
|
c;e++){var k=g[e],h=[];var m=0;for(d=k.length;m<d;m++)h.push(k[m].clone());this.faceVertexUvs[f].push(h)}}m=a.morphTargets;f=0;for(b=m.length;f<b;f++){d={};d.name=m[f].name;if(void 0!==m[f].vertices)for(d.vertices=[],e=0,c=m[f].vertices.length;e<c;e++)d.vertices.push(m[f].vertices[e].clone());if(void 0!==m[f].normals)for(d.normals=[],e=0,c=m[f].normals.length;e<c;e++)d.normals.push(m[f].normals[e].clone());this.morphTargets.push(d)}m=a.morphNormals;f=0;for(b=m.length;f<b;f++){d={};if(void 0!==m[f].vertexNormals)for(d.vertexNormals=
|
|
|
[],e=0,c=m[f].vertexNormals.length;e<c;e++)g=m[f].vertexNormals[e],k={},k.a=g.a.clone(),k.b=g.b.clone(),k.c=g.c.clone(),d.vertexNormals.push(k);if(void 0!==m[f].faceNormals)for(d.faceNormals=[],e=0,c=m[f].faceNormals.length;e<c;e++)d.faceNormals.push(m[f].faceNormals[e].clone());this.morphNormals.push(d)}e=a.skinWeights;f=0;for(b=e.length;f<b;f++)this.skinWeights.push(e[f].clone());e=a.skinIndices;f=0;for(b=e.length;f<b;f++)this.skinIndices.push(e[f].clone());e=a.lineDistances;f=0;for(b=e.length;f<
|
|
|
b;f++)this.lineDistances.push(e[f]);f=a.boundingBox;null!==f&&(this.boundingBox=f.clone());f=a.boundingSphere;null!==f&&(this.boundingSphere=f.clone());this.elementsNeedUpdate=a.elementsNeedUpdate;this.verticesNeedUpdate=a.verticesNeedUpdate;this.uvsNeedUpdate=a.uvsNeedUpdate;this.normalsNeedUpdate=a.normalsNeedUpdate;this.colorsNeedUpdate=a.colorsNeedUpdate;this.lineDistancesNeedUpdate=a.lineDistancesNeedUpdate;this.groupsNeedUpdate=a.groupsNeedUpdate;return this},dispose:function(){this.dispatchEvent({type:"dispose"})}});
|
|
|
-var mh=function(a){function b(b,d,e,f,g,k){a.call(this);this.type="BoxGeometry";this.parameters={width:b,height:d,depth:e,widthSegments:f,heightSegments:g,depthSegments:k};this.fromBufferGeometry(new Id(b,d,e,f,g,k));this.mergeVertices()}a&&(b.__proto__=a);b.prototype=Object.create(a&&a.prototype);return b.prototype.constructor=b}(N),Id=function(a){function b(b,d,e,f,g,k){function c(a,b,c,d,e,f,g,k,l,m,v){var w=f/l,y=g/m,z=f/2,A=g/2,B=k/2;g=l+1;var D=m+1,C=f=0,F,E,G=new n;for(E=0;E<D;E++){var I=E*
|
|
|
+var nh=function(a){function b(b,d,e,f,g,k){a.call(this);this.type="BoxGeometry";this.parameters={width:b,height:d,depth:e,widthSegments:f,heightSegments:g,depthSegments:k};this.fromBufferGeometry(new Id(b,d,e,f,g,k));this.mergeVertices()}a&&(b.__proto__=a);b.prototype=Object.create(a&&a.prototype);return b.prototype.constructor=b}(N),Id=function(a){function b(b,d,e,f,g,k){function c(a,b,c,d,e,f,g,k,l,m,v){var w=f/l,y=g/m,z=f/2,A=g/2,B=k/2;g=l+1;var D=m+1,C=f=0,F,E,G=new n;for(E=0;E<D;E++){var I=E*
|
|
|
y-A;for(F=0;F<g;F++)G[a]=(F*w-z)*d,G[b]=I*e,G[c]=B,p.push(G.x,G.y,G.z),G[a]=0,G[b]=0,G[c]=0<k?1:-1,q.push(G.x,G.y,G.z),t.push(F/l),t.push(1-E/m),f+=1}for(E=0;E<m;E++)for(F=0;F<l;F++)a=r+F+g*(E+1),b=r+(F+1)+g*(E+1),c=r+(F+1)+g*E,x.push(r+F+g*E,a,c),x.push(a,b,c),C+=6;h.addGroup(u,C,v);u+=C;r+=f}a.call(this);this.type="BoxBufferGeometry";this.parameters={width:b,height:d,depth:e,widthSegments:f,heightSegments:g,depthSegments:k};var h=this;b=b||1;d=d||1;e=e||1;f=Math.floor(f)||1;g=Math.floor(g)||1;k=
|
|
|
-Math.floor(k)||1;var x=[],p=[],q=[],t=[],r=0,u=0;c("z","y","x",-1,-1,e,d,b,k,g,0);c("z","y","x",1,-1,e,d,-b,k,g,1);c("x","z","y",1,1,b,e,d,f,k,2);c("x","z","y",1,-1,b,e,-d,f,k,3);c("x","y","z",1,-1,b,d,e,f,g,4);c("x","y","z",-1,-1,b,d,-e,f,g,5);this.setIndex(x);this.setAttribute("position",new B(p,3));this.setAttribute("normal",new B(q,3));this.setAttribute("uv",new B(t,2))}a&&(b.__proto__=a);b.prototype=Object.create(a&&a.prototype);return b.prototype.constructor=b}(A),Sh={clone:Ec,merge:oa};pa.prototype=
|
|
|
+Math.floor(k)||1;var x=[],p=[],q=[],t=[],r=0,u=0;c("z","y","x",-1,-1,e,d,b,k,g,0);c("z","y","x",1,-1,e,d,-b,k,g,1);c("x","z","y",1,1,b,e,d,f,k,2);c("x","z","y",1,-1,b,e,-d,f,k,3);c("x","y","z",1,-1,b,d,e,f,g,4);c("x","y","z",-1,-1,b,d,-e,f,g,5);this.setIndex(x);this.setAttribute("position",new B(p,3));this.setAttribute("normal",new B(q,3));this.setAttribute("uv",new B(t,2))}a&&(b.__proto__=a);b.prototype=Object.create(a&&a.prototype);return b.prototype.constructor=b}(A),Th={clone:Ec,merge:oa};pa.prototype=
|
|
|
Object.create(K.prototype);pa.prototype.constructor=pa;pa.prototype.isShaderMaterial=!0;pa.prototype.copy=function(a){K.prototype.copy.call(this,a);this.fragmentShader=a.fragmentShader;this.vertexShader=a.vertexShader;this.uniforms=Ec(a.uniforms);this.defines=Object.assign({},a.defines);this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.lights=a.lights;this.clipping=a.clipping;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;this.extensions=
|
|
|
a.extensions;return this};pa.prototype.toJSON=function(a){var b=K.prototype.toJSON.call(this,a);b.uniforms={};for(var c in this.uniforms){var d=this.uniforms[c].value;b.uniforms[c]=d&&d.isTexture?{type:"t",value:d.toJSON(a).uuid}:d&&d.isColor?{type:"c",value:d.getHex()}:d&&d.isVector2?{type:"v2",value:d.toArray()}:d&&d.isVector3?{type:"v3",value:d.toArray()}:d&&d.isVector4?{type:"v4",value:d.toArray()}:d&&d.isMatrix3?{type:"m3",value:d.toArray()}:d&&d.isMatrix4?{type:"m4",value:d.toArray()}:{value:d}}0<
|
|
|
Object.keys(this.defines).length&&(b.defines=this.defines);b.vertexShader=this.vertexShader;b.fragmentShader=this.fragmentShader;a={};for(var e in this.extensions)!0===this.extensions[e]&&(a[e]=!0);0<Object.keys(a).length&&(b.extensions=a);return b};cb.prototype=Object.assign(Object.create(E.prototype),{constructor:cb,isCamera:!0,copy:function(a,b){E.prototype.copy.call(this,a,b);this.matrixWorldInverse.copy(a.matrixWorldInverse);this.projectionMatrix.copy(a.projectionMatrix);this.projectionMatrixInverse.copy(a.projectionMatrixInverse);
|
|
@@ -677,20 +677,20 @@ G.emissivemap,G.bumpmap,G.normalmap,G.displacementmap,G.gradientmap,G.fog,G.ligh
|
|
|
G.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:O.linedashed_vert,fragmentShader:O.linedashed_frag},depth:{uniforms:oa([G.common,G.displacementmap]),vertexShader:O.depth_vert,fragmentShader:O.depth_frag},normal:{uniforms:oa([G.common,G.bumpmap,G.normalmap,G.displacementmap,{opacity:{value:1}}]),vertexShader:O.normal_vert,fragmentShader:O.normal_frag},sprite:{uniforms:oa([G.sprite,G.fog]),vertexShader:O.sprite_vert,fragmentShader:O.sprite_frag},background:{uniforms:{uvTransform:{value:new ya},
|
|
|
t2D:{value:null}},vertexShader:O.background_vert,fragmentShader:O.background_frag},cube:{uniforms:oa([G.envmap,{opacity:{value:1}}]),vertexShader:O.cube_vert,fragmentShader:O.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:O.equirect_vert,fragmentShader:O.equirect_frag},distanceRGBA:{uniforms:oa([G.common,G.displacementmap,{referencePosition:{value:new n},nearDistance:{value:1},farDistance:{value:1E3}}]),vertexShader:O.distanceRGBA_vert,fragmentShader:O.distanceRGBA_frag},shadow:{uniforms:oa([G.lights,
|
|
|
G.fog,{color:{value:new C(0)},opacity:{value:1}}]),vertexShader:O.shadow_vert,fragmentShader:O.shadow_frag}};db.physical={uniforms:oa([db.standard.uniforms,{transparency:{value:0},clearcoat:{value:0},clearcoatRoughness:{value:0},sheen:{value:new C(0)},clearcoatNormalScale:{value:new v(1,1)},clearcoatNormalMap:{value:null}}]),vertexShader:O.meshphysical_vert,fragmentShader:O.meshphysical_frag};pb.prototype=Object.create(Z.prototype);pb.prototype.constructor=pb;pb.prototype.isCubeTexture=!0;Object.defineProperty(pb.prototype,
|
|
|
-"images",{get:function(){return this.image},set:function(a){this.image=a}});Hc.prototype=Object.create(Z.prototype);Hc.prototype.constructor=Hc;Hc.prototype.isDataTexture2DArray=!0;Ic.prototype=Object.create(Z.prototype);Ic.prototype.constructor=Ic;Ic.prototype.isDataTexture3D=!0;var Gh=new Z,Oj=new Hc,Qj=new Ic,Hh=new pb,Ah=[],Ch=[],Fh=new Float32Array(16),Eh=new Float32Array(9),Dh=new Float32Array(4);Ih.prototype.updateCache=function(a){var b=this.cache;a instanceof Float32Array&&b.length!==a.length&&
|
|
|
-(this.cache=new Float32Array(a.length));Ia(b,a)};Jh.prototype.setValue=function(a,b,c){for(var d=this.seq,e=0,f=d.length;e!==f;++e){var g=d[e];g.setValue(a,b[g.id],c)}};var hg=/([\w\d_]+)(\])?(\[|\.)?/g;Db.prototype.setValue=function(a,b,c,d){b=this.map[b];void 0!==b&&b.setValue(a,c,d)};Db.prototype.setOptional=function(a,b,c){b=b[c];void 0!==b&&this.setValue(a,c,b)};Db.upload=function(a,b,c,d){for(var e=0,f=b.length;e!==f;++e){var g=b[e],k=c[g.id];!1!==k.needsUpdate&&g.setValue(a,k.value,d)}};Db.seqWithValue=
|
|
|
-function(a,b){for(var c=[],d=0,e=a.length;d!==e;++d){var f=a[d];f.id in b&&c.push(f)}return c};var vk=0,jg=/^[ \t]*#include +<([\w\d./]+)>/gm,Rh=/#pragma unroll_loop[\s]+?for \( int i = (\d+); i < (\d+); i \+\+ \) \{([\s\S]+?)(?=\})\}/g,Ek=0;Eb.prototype=Object.create(K.prototype);Eb.prototype.constructor=Eb;Eb.prototype.isMeshDepthMaterial=!0;Eb.prototype.copy=function(a){K.prototype.copy.call(this,a);this.depthPacking=a.depthPacking;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.map=
|
|
|
+"images",{get:function(){return this.image},set:function(a){this.image=a}});Hc.prototype=Object.create(Z.prototype);Hc.prototype.constructor=Hc;Hc.prototype.isDataTexture2DArray=!0;Ic.prototype=Object.create(Z.prototype);Ic.prototype.constructor=Ic;Ic.prototype.isDataTexture3D=!0;var Hh=new Z,Oj=new Hc,Qj=new Ic,Ih=new pb,Bh=[],Dh=[],Gh=new Float32Array(16),Fh=new Float32Array(9),Eh=new Float32Array(4);Jh.prototype.updateCache=function(a){var b=this.cache;a instanceof Float32Array&&b.length!==a.length&&
|
|
|
+(this.cache=new Float32Array(a.length));Ia(b,a)};Kh.prototype.setValue=function(a,b,c){for(var d=this.seq,e=0,f=d.length;e!==f;++e){var g=d[e];g.setValue(a,b[g.id],c)}};var hg=/([\w\d_]+)(\])?(\[|\.)?/g;Db.prototype.setValue=function(a,b,c,d){b=this.map[b];void 0!==b&&b.setValue(a,c,d)};Db.prototype.setOptional=function(a,b,c){b=b[c];void 0!==b&&this.setValue(a,c,b)};Db.upload=function(a,b,c,d){for(var e=0,f=b.length;e!==f;++e){var g=b[e],k=c[g.id];!1!==k.needsUpdate&&g.setValue(a,k.value,d)}};Db.seqWithValue=
|
|
|
+function(a,b){for(var c=[],d=0,e=a.length;d!==e;++d){var f=a[d];f.id in b&&c.push(f)}return c};var vk=0,jg=/^[ \t]*#include +<([\w\d./]+)>/gm,Sh=/#pragma unroll_loop[\s]+?for \( int i = (\d+); i < (\d+); i \+\+ \) \{([\s\S]+?)(?=\})\}/g,Ek=0;Eb.prototype=Object.create(K.prototype);Eb.prototype.constructor=Eb;Eb.prototype.isMeshDepthMaterial=!0;Eb.prototype.copy=function(a){K.prototype.copy.call(this,a);this.depthPacking=a.depthPacking;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.map=
|
|
|
a.map;this.alphaMap=a.alphaMap;this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;return this};Fb.prototype=Object.create(K.prototype);Fb.prototype.constructor=Fb;Fb.prototype.isMeshDistanceMaterial=!0;Fb.prototype.copy=function(a){K.prototype.copy.call(this,a);this.referencePosition.copy(a.referencePosition);this.nearDistance=a.nearDistance;this.farDistance=
|
|
|
a.farDistance;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.map=a.map;this.alphaMap=a.alphaMap;this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;return this};og.prototype=Object.assign(Object.create(wa.prototype),{constructor:og,isWebGLMultiviewRenderTarget:!0,copy:function(a){wa.prototype.copy.call(this,a);this.numViews=a.numViews;return this},setNumViews:function(a){this.numViews!==a&&(this.numViews=a,this.dispose());
|
|
|
-return this}});Pe.prototype=Object.assign(Object.create(ea.prototype),{constructor:Pe,isArrayCamera:!0});Lc.prototype=Object.assign(Object.create(E.prototype),{constructor:Lc,isGroup:!0});Object.assign(Yh.prototype,Ea.prototype);Object.assign(Qe.prototype,{isFogExp2:!0,clone:function(){return new Qe(this.color,this.density)},toJSON:function(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}});Object.assign(Re.prototype,{isFog:!0,clone:function(){return new Re(this.color,this.near,
|
|
|
+return this}});Pe.prototype=Object.assign(Object.create(ea.prototype),{constructor:Pe,isArrayCamera:!0});Lc.prototype=Object.assign(Object.create(E.prototype),{constructor:Lc,isGroup:!0});Object.assign(Zh.prototype,Ea.prototype);Object.assign(Qe.prototype,{isFogExp2:!0,clone:function(){return new Qe(this.color,this.density)},toJSON:function(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}});Object.assign(Re.prototype,{isFog:!0,clone:function(){return new Re(this.color,this.near,
|
|
|
this.far)},toJSON:function(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}});Object.defineProperty(qb.prototype,"needsUpdate",{set:function(a){!0===a&&this.version++}});Object.assign(qb.prototype,{isInterleavedBuffer:!0,onUploadCallback:function(){},setUsage:function(a){this.usage=a;return this},copy:function(a){this.array=new a.array.constructor(a.array);this.count=a.count;this.stride=a.stride;this.usage=a.usage;return this},copyAt:function(a,b,c){a*=this.stride;c*=b.stride;
|
|
|
for(var d=0,e=this.stride;d<e;d++)this.array[a+d]=b.array[c+d];return this},set:function(a,b){void 0===b&&(b=0);this.array.set(a,b);return this},clone:function(){return(new this.constructor).copy(this)},onUpload:function(a){this.onUploadCallback=a;return this}});var tc=new n;Object.defineProperties(Od.prototype,{count:{get:function(){return this.data.count}},array:{get:function(){return this.data.array}}});Object.assign(Od.prototype,{isInterleavedBufferAttribute:!0,applyMatrix4:function(a){for(var b=
|
|
|
0,c=this.data.count;b<c;b++)tc.x=this.getX(b),tc.y=this.getY(b),tc.z=this.getZ(b),tc.applyMatrix4(a),this.setXYZ(b,tc.x,tc.y,tc.z);return this},setX:function(a,b){this.data.array[a*this.data.stride+this.offset]=b;return this},setY:function(a,b){this.data.array[a*this.data.stride+this.offset+1]=b;return this},setZ:function(a,b){this.data.array[a*this.data.stride+this.offset+2]=b;return this},setW:function(a,b){this.data.array[a*this.data.stride+this.offset+3]=b;return this},getX:function(a){return this.data.array[a*
|
|
|
this.data.stride+this.offset]},getY:function(a){return this.data.array[a*this.data.stride+this.offset+1]},getZ:function(a){return this.data.array[a*this.data.stride+this.offset+2]},getW:function(a){return this.data.array[a*this.data.stride+this.offset+3]},setXY:function(a,b,c){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;return this},setXYZ:function(a,b,c,d){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;this.data.array[a+2]=d;return this},
|
|
|
setXYZW:function(a,b,c,d,e){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;this.data.array[a+2]=d;this.data.array[a+3]=e;return this}});Hb.prototype=Object.create(K.prototype);Hb.prototype.constructor=Hb;Hb.prototype.isSpriteMaterial=!0;Hb.prototype.copy=function(a){K.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.alphaMap=a.alphaMap;this.rotation=a.rotation;this.sizeAttenuation=a.sizeAttenuation;return this};var Mc,De=new n,wd=new n,xd=new n,
|
|
|
-Nc=new v,Qd=new v,$h=new P,Mf=new n,Ee=new n,Nf=new n,Qi=new v,nh=new v,Ri=new v;Pd.prototype=Object.assign(Object.create(E.prototype),{constructor:Pd,isSprite:!0,raycast:function(a,b){null===a.camera&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.');wd.setFromMatrixScale(this.matrixWorld);$h.copy(a.camera.matrixWorld);this.modelViewMatrix.multiplyMatrices(a.camera.matrixWorldInverse,this.matrixWorld);xd.setFromMatrixPosition(this.modelViewMatrix);
|
|
|
-a.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&wd.multiplyScalar(-xd.z);var c=this.material.rotation;if(0!==c){var d=Math.cos(c);var e=Math.sin(c)}c=this.center;Se(Mf.set(-.5,-.5,0),xd,c,wd,e,d);Se(Ee.set(.5,-.5,0),xd,c,wd,e,d);Se(Nf.set(.5,.5,0),xd,c,wd,e,d);Qi.set(0,0);nh.set(1,0);Ri.set(1,1);var f=a.ray.intersectTriangle(Mf,Ee,Nf,!1,De);if(null===f&&(Se(Ee.set(-.5,.5,0),xd,c,wd,e,d),nh.set(0,1),f=a.ray.intersectTriangle(Mf,Nf,Ee,!1,De),null===f))return;e=a.ray.origin.distanceTo(De);
|
|
|
-e<a.near||e>a.far||b.push({distance:e,point:De.clone(),uv:na.getUV(De,Mf,Ee,Nf,Qi,nh,Ri,new v),face:null,object:this})},clone:function(){return(new this.constructor(this.material)).copy(this)},copy:function(a){E.prototype.copy.call(this,a);void 0!==a.center&&this.center.copy(a.center);return this}});var Of=new n,Si=new n;Rd.prototype=Object.assign(Object.create(E.prototype),{constructor:Rd,isLOD:!0,copy:function(a){E.prototype.copy.call(this,a,!1);for(var b=a.levels,c=0,d=b.length;c<d;c++){var e=
|
|
|
+Nc=new v,Qd=new v,ai=new P,Mf=new n,Ee=new n,Nf=new n,Qi=new v,oh=new v,Ri=new v;Pd.prototype=Object.assign(Object.create(E.prototype),{constructor:Pd,isSprite:!0,raycast:function(a,b){null===a.camera&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.');wd.setFromMatrixScale(this.matrixWorld);ai.copy(a.camera.matrixWorld);this.modelViewMatrix.multiplyMatrices(a.camera.matrixWorldInverse,this.matrixWorld);xd.setFromMatrixPosition(this.modelViewMatrix);
|
|
|
+a.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&wd.multiplyScalar(-xd.z);var c=this.material.rotation;if(0!==c){var d=Math.cos(c);var e=Math.sin(c)}c=this.center;Se(Mf.set(-.5,-.5,0),xd,c,wd,e,d);Se(Ee.set(.5,-.5,0),xd,c,wd,e,d);Se(Nf.set(.5,.5,0),xd,c,wd,e,d);Qi.set(0,0);oh.set(1,0);Ri.set(1,1);var f=a.ray.intersectTriangle(Mf,Ee,Nf,!1,De);if(null===f&&(Se(Ee.set(-.5,.5,0),xd,c,wd,e,d),oh.set(0,1),f=a.ray.intersectTriangle(Mf,Nf,Ee,!1,De),null===f))return;e=a.ray.origin.distanceTo(De);
|
|
|
+e<a.near||e>a.far||b.push({distance:e,point:De.clone(),uv:na.getUV(De,Mf,Ee,Nf,Qi,oh,Ri,new v),face:null,object:this})},clone:function(){return(new this.constructor(this.material)).copy(this)},copy:function(a){E.prototype.copy.call(this,a);void 0!==a.center&&this.center.copy(a.center);return this}});var Of=new n,Si=new n;Rd.prototype=Object.assign(Object.create(E.prototype),{constructor:Rd,isLOD:!0,copy:function(a){E.prototype.copy.call(this,a,!1);for(var b=a.levels,c=0,d=b.length;c<d;c++){var e=
|
|
|
b[c];this.addLevel(e.object.clone(),e.distance)}this.autoUpdate=a.autoUpdate;return this},addLevel:function(a,b){void 0===b&&(b=0);b=Math.abs(b);for(var c=this.levels,d=0;d<c.length&&!(b<c[d].distance);d++);c.splice(d,0,{distance:b,object:a});this.add(a);return this},getCurrentLevel:function(){return this._currentLevel},getObjectForDistance:function(a){var b=this.levels;if(0<b.length){for(var c=1,d=b.length;c<d&&!(a<b[c].distance);c++);return b[c-1].object}return null},raycast:function(a,b){if(0<
|
|
|
this.levels.length){Of.setFromMatrixPosition(this.matrixWorld);var c=a.ray.origin.distanceTo(Of);this.getObjectForDistance(c).raycast(a,b)}},update:function(a){var b=this.levels;if(1<b.length){Of.setFromMatrixPosition(a.matrixWorld);Si.setFromMatrixPosition(this.matrixWorld);a=Of.distanceTo(Si)/a.zoom;b[0].object.visible=!0;for(var c=1,d=b.length;c<d;c++)if(a>=b[c].distance)b[c-1].object.visible=!1,b[c].object.visible=!0;else break;for(this._currentLevel=c-1;c<d;c++)b[c].object.visible=!1}},toJSON:function(a){a=
|
|
|
E.prototype.toJSON.call(this,a);!1===this.autoUpdate&&(a.object.autoUpdate=!1);a.object.levels=[];for(var b=this.levels,c=0,d=b.length;c<d;c++){var e=b[c];a.object.levels.push({object:e.object.uuid,distance:e.distance})}return a}});Sd.prototype=Object.assign(Object.create(ca.prototype),{constructor:Sd,isSkinnedMesh:!0,bind:function(a,b){this.skeleton=a;void 0===b&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),b=this.matrixWorld);this.bindMatrix.copy(b);this.bindMatrixInverse.getInverse(b)},
|
|
@@ -700,10 +700,10 @@ c=0;for(b=this.bones.length;c<b;c++)if(a=this.bones[c])a.parent&&a.parent.isBone
|
|
|
this.boneInverses)},getBoneByName:function(a){for(var b=0,c=this.bones.length;b<c;b++){var d=this.bones[b];if(d.name===a)return d}}});qg.prototype=Object.assign(Object.create(E.prototype),{constructor:qg,isBone:!0});var Ui=new P,Vi=new P,yd=[],Fe=new ca;Ue.prototype=Object.assign(Object.create(ca.prototype),{constructor:Ue,isInstancedMesh:!0,getMatrixAt:function(a,b){b.fromArray(this.instanceMatrix.array,16*a)},raycast:function(a,b){var c=this.matrixWorld,d=this.count;Fe.geometry=this.geometry;Fe.material=
|
|
|
this.material;if(void 0!==Fe.material)for(var e=0;e<d;e++)this.getMatrixAt(e,Ui),Vi.multiplyMatrices(c,Ui),Fe.matrixWorld=Vi,Fe.raycast(a,yd),0<yd.length&&(yd[0].instanceId=e,yd[0].object=this,b.push(yd[0]),yd.length=0)},setMatrixAt:function(a,b){b.toArray(this.instanceMatrix.array,16*a)},updateMorphTargets:function(){}});ja.prototype=Object.create(K.prototype);ja.prototype.constructor=ja;ja.prototype.isLineBasicMaterial=!0;ja.prototype.copy=function(a){K.prototype.copy.call(this,a);this.color.copy(a.color);
|
|
|
this.linewidth=a.linewidth;this.linecap=a.linecap;this.linejoin=a.linejoin;return this};var Wi=new n,Xi=new n,Yi=new P,Pf=new Ub,Ge=new ob;Ja.prototype=Object.assign(Object.create(E.prototype),{constructor:Ja,isLine:!0,computeLineDistances:function(){var a=this.geometry;if(a.isBufferGeometry)if(null===a.index){for(var b=a.attributes.position,c=[0],d=1,e=b.count;d<e;d++)Wi.fromBufferAttribute(b,d-1),Xi.fromBufferAttribute(b,d),c[d]=c[d-1],c[d]+=Wi.distanceTo(Xi);a.setAttribute("lineDistance",new B(c,
|
|
|
-1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else if(a.isGeometry)for(b=a.vertices,c=a.lineDistances,c[0]=0,d=1,e=b.length;d<e;d++)c[d]=c[d-1],c[d]+=b[d-1].distanceTo(b[d]);return this},raycast:function(a,b){var c=a.linePrecision,d=this.geometry,e=this.matrixWorld;null===d.boundingSphere&&d.computeBoundingSphere();Ge.copy(d.boundingSphere);Ge.applyMatrix4(e);Ge.radius+=c;if(!1!==a.ray.intersectsSphere(Ge)){Yi.getInverse(e);
|
|
|
-Pf.copy(a.ray).applyMatrix4(Yi);c/=(this.scale.x+this.scale.y+this.scale.z)/3;c*=c;var f=new n,g=new n;e=new n;var k=new n,h=this&&this.isLineSegments?2:1;if(d.isBufferGeometry){var m=d.index,x=d.attributes.position.array;if(null!==m){m=m.array;d=0;for(var p=m.length-1;d<p;d+=h){var q=m[d+1];f.fromArray(x,3*m[d]);g.fromArray(x,3*q);q=Pf.distanceSqToSegment(f,g,k,e);q>c||(k.applyMatrix4(this.matrixWorld),q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),
|
|
|
-index:d,face:null,faceIndex:null,object:this}))}}else for(d=0,p=x.length/3-1;d<p;d+=h)f.fromArray(x,3*d),g.fromArray(x,3*d+3),q=Pf.distanceSqToSegment(f,g,k,e),q>c||(k.applyMatrix4(this.matrixWorld),q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),index:d,face:null,faceIndex:null,object:this}))}else if(d.isGeometry)for(f=d.vertices,g=f.length,d=0;d<g-1;d+=h)q=Pf.distanceSqToSegment(f[d],f[d+1],k,e),q>c||(k.applyMatrix4(this.matrixWorld),
|
|
|
-q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),index:d,face:null,faceIndex:null,object:this}))}},clone:function(){return(new this.constructor(this.geometry,this.material)).copy(this)}});var Qf=new n,Rf=new n;la.prototype=Object.assign(Object.create(Ja.prototype),{constructor:la,isLineSegments:!0,computeLineDistances:function(){var a=this.geometry;if(a.isBufferGeometry)if(null===a.index){for(var b=a.attributes.position,c=[],d=0,e=b.count;d<
|
|
|
+1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else if(a.isGeometry)for(b=a.vertices,c=a.lineDistances,c[0]=0,d=1,e=b.length;d<e;d++)c[d]=c[d-1],c[d]+=b[d-1].distanceTo(b[d]);return this},raycast:function(a,b){var c=this.geometry,d=this.matrixWorld,e=a.params.Line.threshold;null===c.boundingSphere&&c.computeBoundingSphere();Ge.copy(c.boundingSphere);Ge.applyMatrix4(d);Ge.radius+=e;if(!1!==a.ray.intersectsSphere(Ge)){Yi.getInverse(d);
|
|
|
+Pf.copy(a.ray).applyMatrix4(Yi);d=e/((this.scale.x+this.scale.y+this.scale.z)/3);d*=d;var f=new n,g=new n;e=new n;var k=new n,h=this&&this.isLineSegments?2:1;if(c.isBufferGeometry){var m=c.index,x=c.attributes.position.array;if(null!==m){m=m.array;c=0;for(var p=m.length-1;c<p;c+=h){var q=m[c+1];f.fromArray(x,3*m[c]);g.fromArray(x,3*q);q=Pf.distanceSqToSegment(f,g,k,e);q>d||(k.applyMatrix4(this.matrixWorld),q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),
|
|
|
+index:c,face:null,faceIndex:null,object:this}))}}else for(c=0,p=x.length/3-1;c<p;c+=h)f.fromArray(x,3*c),g.fromArray(x,3*c+3),q=Pf.distanceSqToSegment(f,g,k,e),q>d||(k.applyMatrix4(this.matrixWorld),q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),index:c,face:null,faceIndex:null,object:this}))}else if(c.isGeometry)for(f=c.vertices,g=f.length,c=0;c<g-1;c+=h)q=Pf.distanceSqToSegment(f[c],f[c+1],k,e),q>d||(k.applyMatrix4(this.matrixWorld),
|
|
|
+q=a.ray.origin.distanceTo(k),q<a.near||q>a.far||b.push({distance:q,point:e.clone().applyMatrix4(this.matrixWorld),index:c,face:null,faceIndex:null,object:this}))}},clone:function(){return(new this.constructor(this.geometry,this.material)).copy(this)}});var Qf=new n,Rf=new n;la.prototype=Object.assign(Object.create(Ja.prototype),{constructor:la,isLineSegments:!0,computeLineDistances:function(){var a=this.geometry;if(a.isBufferGeometry)if(null===a.index){for(var b=a.attributes.position,c=[],d=0,e=b.count;d<
|
|
|
e;d+=2)Qf.fromBufferAttribute(b,d),Rf.fromBufferAttribute(b,d+1),c[d]=0===d?0:c[d-1],c[d+1]=c[d]+Qf.distanceTo(Rf);a.setAttribute("lineDistance",new B(c,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else if(a.isGeometry)for(b=a.vertices,c=a.lineDistances,d=0,e=b.length;d<e;d+=2)Qf.copy(b[d]),Rf.copy(b[d+1]),c[d]=0===d?0:c[d-1],c[d+1]=c[d]+Qf.distanceTo(Rf);return this}});Ve.prototype=Object.assign(Object.create(Ja.prototype),
|
|
|
{constructor:Ve,isLineLoop:!0});Ua.prototype=Object.create(K.prototype);Ua.prototype.constructor=Ua;Ua.prototype.isPointsMaterial=!0;Ua.prototype.copy=function(a){K.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.alphaMap=a.alphaMap;this.size=a.size;this.sizeAttenuation=a.sizeAttenuation;this.morphTargets=a.morphTargets;return this};var Zi=new P,sg=new Ub,He=new ob,Sf=new n;Oc.prototype=Object.assign(Object.create(E.prototype),{constructor:Oc,isPoints:!0,raycast:function(a,
|
|
|
b){var c=this.geometry,d=this.matrixWorld,e=a.params.Points.threshold;null===c.boundingSphere&&c.computeBoundingSphere();He.copy(c.boundingSphere);He.applyMatrix4(d);He.radius+=e;if(!1!==a.ray.intersectsSphere(He))if(Zi.getInverse(d),sg.copy(a.ray).applyMatrix4(Zi),e/=(this.scale.x+this.scale.y+this.scale.z)/3,e*=e,c.isBufferGeometry){var f=c.index;c=c.attributes.position.array;if(null!==f){var g=f.array;f=0;for(var k=g.length;f<k;f++){var h=g[f];Sf.fromArray(c,3*h);rg(Sf,h,e,d,a,b,this)}}else for(f=
|
|
@@ -712,15 +712,15 @@ a&&0<a.length&&console.error("THREE.Points.updateMorphTargets() does not support
|
|
|
!0;Td.prototype=Object.create(Z.prototype);Td.prototype.constructor=Td;Td.prototype.isCanvasTexture=!0;Ud.prototype=Object.create(Z.prototype);Ud.prototype.constructor=Ud;Ud.prototype.isDepthTexture=!0;Qc.prototype=Object.create(A.prototype);Qc.prototype.constructor=Qc;Vd.prototype=Object.create(N.prototype);Vd.prototype.constructor=Vd;Rc.prototype=Object.create(A.prototype);Rc.prototype.constructor=Rc;Wd.prototype=Object.create(N.prototype);Wd.prototype.constructor=Wd;Ha.prototype=Object.create(A.prototype);
|
|
|
Ha.prototype.constructor=Ha;Xd.prototype=Object.create(N.prototype);Xd.prototype.constructor=Xd;Sc.prototype=Object.create(Ha.prototype);Sc.prototype.constructor=Sc;Yd.prototype=Object.create(N.prototype);Yd.prototype.constructor=Yd;bc.prototype=Object.create(Ha.prototype);bc.prototype.constructor=bc;Zd.prototype=Object.create(N.prototype);Zd.prototype.constructor=Zd;Tc.prototype=Object.create(Ha.prototype);Tc.prototype.constructor=Tc;$d.prototype=Object.create(N.prototype);$d.prototype.constructor=
|
|
|
$d;Uc.prototype=Object.create(Ha.prototype);Uc.prototype.constructor=Uc;ae.prototype=Object.create(N.prototype);ae.prototype.constructor=ae;cc.prototype=Object.create(A.prototype);cc.prototype.constructor=cc;cc.prototype.toJSON=function(){var a=A.prototype.toJSON.call(this);a.path=this.parameters.path.toJSON();return a};be.prototype=Object.create(N.prototype);be.prototype.constructor=be;Vc.prototype=Object.create(A.prototype);Vc.prototype.constructor=Vc;ce.prototype=Object.create(N.prototype);ce.prototype.constructor=
|
|
|
-ce;Wc.prototype=Object.create(A.prototype);Wc.prototype.constructor=Wc;var $k={triangulate:function(a,b,c){c=c||2;var d=b&&b.length,e=d?b[0]*c:a.length,f=ai(a,0,e,c,!0),g=[];if(!f||f.next===f.prev)return g;var k;if(d){var h=c;d=[];var m;var n=0;for(m=b.length;n<m;n++){var p=b[n]*h;var q=n<m-1?b[n+1]*h:a.length;p=ai(a,p,q,h,!1);p===p.next&&(p.steiner=!0);d.push(Mk(p))}d.sort(Kk);for(n=0;n<d.length;n++){b=d[n];h=f;if(h=Lk(b,h))b=di(h,b),ee(b,b.next);f=ee(f,f.next)}}if(a.length>80*c){var t=k=a[0];var r=
|
|
|
-d=a[1];for(h=c;h<e;h+=c)n=a[h],b=a[h+1],n<t&&(t=n),b<r&&(r=b),n>k&&(k=n),b>d&&(d=b);k=Math.max(k-t,d-r);k=0!==k?1/k:0}fe(f,g,c,t,r,k);return g}},rb={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},isClockWise:function(a){return 0>rb.area(a)},triangulateShape:function(a,b){var c=[],d=[],e=[];ei(a);fi(c,a);var f=a.length;b.forEach(ei);for(a=0;a<b.length;a++)d.push(f),f+=b[a].length,fi(c,b[a]);b=$k.triangulate(c,d);for(a=0;a<b.length;a+=3)e.push(b.slice(a,
|
|
|
-a+3));return e}};ec.prototype=Object.create(N.prototype);ec.prototype.constructor=ec;ec.prototype.toJSON=function(){var a=N.prototype.toJSON.call(this);return gi(this.parameters.shapes,this.parameters.options,a)};eb.prototype=Object.create(A.prototype);eb.prototype.constructor=eb;eb.prototype.toJSON=function(){var a=A.prototype.toJSON.call(this);return gi(this.parameters.shapes,this.parameters.options,a)};var Nk={generateTopUV:function(a,b,c,d,e){a=b[3*d];d=b[3*d+1];var f=b[3*e];e=b[3*e+1];return[new v(b[3*
|
|
|
+ce;Wc.prototype=Object.create(A.prototype);Wc.prototype.constructor=Wc;var $k={triangulate:function(a,b,c){c=c||2;var d=b&&b.length,e=d?b[0]*c:a.length,f=bi(a,0,e,c,!0),g=[];if(!f||f.next===f.prev)return g;var k;if(d){var h=c;d=[];var m;var n=0;for(m=b.length;n<m;n++){var p=b[n]*h;var q=n<m-1?b[n+1]*h:a.length;p=bi(a,p,q,h,!1);p===p.next&&(p.steiner=!0);d.push(Mk(p))}d.sort(Kk);for(n=0;n<d.length;n++){b=d[n];h=f;if(h=Lk(b,h))b=ei(h,b),ee(b,b.next);f=ee(f,f.next)}}if(a.length>80*c){var t=k=a[0];var r=
|
|
|
+d=a[1];for(h=c;h<e;h+=c)n=a[h],b=a[h+1],n<t&&(t=n),b<r&&(r=b),n>k&&(k=n),b>d&&(d=b);k=Math.max(k-t,d-r);k=0!==k?1/k:0}fe(f,g,c,t,r,k);return g}},rb={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},isClockWise:function(a){return 0>rb.area(a)},triangulateShape:function(a,b){var c=[],d=[],e=[];fi(a);gi(c,a);var f=a.length;b.forEach(fi);for(a=0;a<b.length;a++)d.push(f),f+=b[a].length,gi(c,b[a]);b=$k.triangulate(c,d);for(a=0;a<b.length;a+=3)e.push(b.slice(a,
|
|
|
+a+3));return e}};ec.prototype=Object.create(N.prototype);ec.prototype.constructor=ec;ec.prototype.toJSON=function(){var a=N.prototype.toJSON.call(this);return hi(this.parameters.shapes,this.parameters.options,a)};eb.prototype=Object.create(A.prototype);eb.prototype.constructor=eb;eb.prototype.toJSON=function(){var a=A.prototype.toJSON.call(this);return hi(this.parameters.shapes,this.parameters.options,a)};var Nk={generateTopUV:function(a,b,c,d,e){a=b[3*d];d=b[3*d+1];var f=b[3*e];e=b[3*e+1];return[new v(b[3*
|
|
|
c],b[3*c+1]),new v(a,d),new v(f,e)]},generateSideWallUV:function(a,b,c,d,e,f){a=b[3*c];var g=b[3*c+1];c=b[3*c+2];var k=b[3*d],h=b[3*d+1];d=b[3*d+2];var m=b[3*e],n=b[3*e+1];e=b[3*e+2];var p=b[3*f],q=b[3*f+1];b=b[3*f+2];return.01>Math.abs(g-h)?[new v(a,1-c),new v(k,1-d),new v(m,1-e),new v(p,1-b)]:[new v(g,1-c),new v(h,1-d),new v(n,1-e),new v(q,1-b)]}};he.prototype=Object.create(N.prototype);he.prototype.constructor=he;Yc.prototype=Object.create(eb.prototype);Yc.prototype.constructor=Yc;ie.prototype=
|
|
|
Object.create(N.prototype);ie.prototype.constructor=ie;fc.prototype=Object.create(A.prototype);fc.prototype.constructor=fc;je.prototype=Object.create(N.prototype);je.prototype.constructor=je;Zc.prototype=Object.create(A.prototype);Zc.prototype.constructor=Zc;ke.prototype=Object.create(N.prototype);ke.prototype.constructor=ke;$c.prototype=Object.create(A.prototype);$c.prototype.constructor=$c;gc.prototype=Object.create(N.prototype);gc.prototype.constructor=gc;gc.prototype.toJSON=function(){var a=N.prototype.toJSON.call(this);
|
|
|
-return hi(this.parameters.shapes,a)};hc.prototype=Object.create(A.prototype);hc.prototype.constructor=hc;hc.prototype.toJSON=function(){var a=A.prototype.toJSON.call(this);return hi(this.parameters.shapes,a)};ad.prototype=Object.create(A.prototype);ad.prototype.constructor=ad;ic.prototype=Object.create(N.prototype);ic.prototype.constructor=ic;sb.prototype=Object.create(A.prototype);sb.prototype.constructor=sb;le.prototype=Object.create(ic.prototype);le.prototype.constructor=le;me.prototype=Object.create(sb.prototype);
|
|
|
+return ii(this.parameters.shapes,a)};hc.prototype=Object.create(A.prototype);hc.prototype.constructor=hc;hc.prototype.toJSON=function(){var a=A.prototype.toJSON.call(this);return ii(this.parameters.shapes,a)};ad.prototype=Object.create(A.prototype);ad.prototype.constructor=ad;ic.prototype=Object.create(N.prototype);ic.prototype.constructor=ic;sb.prototype=Object.create(A.prototype);sb.prototype.constructor=sb;le.prototype=Object.create(ic.prototype);le.prototype.constructor=le;me.prototype=Object.create(sb.prototype);
|
|
|
me.prototype.constructor=me;ne.prototype=Object.create(N.prototype);ne.prototype.constructor=ne;bd.prototype=Object.create(A.prototype);bd.prototype.constructor=bd;var va=Object.freeze({__proto__:null,WireframeGeometry:Qc,ParametricGeometry:Vd,ParametricBufferGeometry:Rc,TetrahedronGeometry:Xd,TetrahedronBufferGeometry:Sc,OctahedronGeometry:Yd,OctahedronBufferGeometry:bc,IcosahedronGeometry:Zd,IcosahedronBufferGeometry:Tc,DodecahedronGeometry:$d,DodecahedronBufferGeometry:Uc,PolyhedronGeometry:Wd,
|
|
|
PolyhedronBufferGeometry:Ha,TubeGeometry:ae,TubeBufferGeometry:cc,TorusKnotGeometry:be,TorusKnotBufferGeometry:Vc,TorusGeometry:ce,TorusBufferGeometry:Wc,TextGeometry:he,TextBufferGeometry:Yc,SphereGeometry:ie,SphereBufferGeometry:fc,RingGeometry:je,RingBufferGeometry:Zc,PlaneGeometry:Hd,PlaneBufferGeometry:ac,LatheGeometry:ke,LatheBufferGeometry:$c,ShapeGeometry:gc,ShapeBufferGeometry:hc,ExtrudeGeometry:ec,ExtrudeBufferGeometry:eb,EdgesGeometry:ad,ConeGeometry:le,ConeBufferGeometry:me,CylinderGeometry:ic,
|
|
|
-CylinderBufferGeometry:sb,CircleGeometry:ne,CircleBufferGeometry:bd,BoxGeometry:mh,BoxBufferGeometry:Id});jc.prototype=Object.create(K.prototype);jc.prototype.constructor=jc;jc.prototype.isShadowMaterial=!0;jc.prototype.copy=function(a){K.prototype.copy.call(this,a);this.color.copy(a.color);return this};tb.prototype=Object.create(pa.prototype);tb.prototype.constructor=tb;tb.prototype.isRawShaderMaterial=!0;fb.prototype=Object.create(K.prototype);fb.prototype.constructor=fb;fb.prototype.isMeshStandardMaterial=
|
|
|
+CylinderBufferGeometry:sb,CircleGeometry:ne,CircleBufferGeometry:bd,BoxGeometry:nh,BoxBufferGeometry:Id});jc.prototype=Object.create(K.prototype);jc.prototype.constructor=jc;jc.prototype.isShadowMaterial=!0;jc.prototype.copy=function(a){K.prototype.copy.call(this,a);this.color.copy(a.color);return this};tb.prototype=Object.create(pa.prototype);tb.prototype.constructor=tb;tb.prototype.isRawShaderMaterial=!0;fb.prototype=Object.create(K.prototype);fb.prototype.constructor=fb;fb.prototype.isMeshStandardMaterial=
|
|
|
!0;fb.prototype.copy=function(a){K.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.normalMapType=
|
|
|
a.normalMapType;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;this.vertexTangents=a.vertexTangents;return this};kc.prototype=Object.create(fb.prototype);kc.prototype.constructor=kc;kc.prototype.isMeshPhysicalMaterial=!0;kc.prototype.copy=function(a){fb.prototype.copy.call(this,a);this.defines={STANDARD:"",PHYSICAL:""};this.reflectivity=a.reflectivity;this.clearcoat=a.clearcoat;this.clearcoatRoughness=a.clearcoatRoughness;this.sheen=a.sheen?(this.sheen||
|
|
@@ -757,7 +757,7 @@ return new Pa(a.name,a.duration,b)},toJSON:function(a){var b=[],c=a.tracks;a={na
|
|
|
b){if(!a)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;var c=function(a,b,c,d,e){if(0!==c.length){var f=[],g=[];fa.flattenJSON(c,f,g,d);0!==f.length&&e.push(new a(b,f,g))}},d=[],e=a.name||"default",f=a.length||-1,g=a.fps||30;a=a.hierarchy||[];for(var k=0;k<a.length;k++){var h=a[k].keys;if(h&&0!==h.length)if(h[0].morphTargets){f={};for(var m=0;m<h.length;m++)if(h[m].morphTargets)for(var n=0;n<h[m].morphTargets.length;n++)f[h[m].morphTargets[n]]=-1;for(var p in f){var q=
|
|
|
[],t=[];for(n=0;n!==h[m].morphTargets.length;++n){var r=h[m];q.push(r.time);t.push(r.morphTarget===p?1:0)}d.push(new cd(".morphTargetInfluence["+p+"]",q,t))}f=f.length*(g||1)}else m=".bones["+b[k].name+"]",c(dd,m+".position",h,"pos",d),c(pe,m+".quaternion",h,"rot",d),c(dd,m+".scale",h,"scl",d)}return 0===d.length?null:new Pa(e,f,d)}});Object.assign(Pa.prototype,{resetDuration:function(){for(var a=0,b=0,c=this.tracks.length;b!==c;++b){var d=this.tracks[b];a=Math.max(a,d.times[d.times.length-1])}this.duration=
|
|
|
a;return this},trim:function(){for(var a=0;a<this.tracks.length;a++)this.tracks[a].trim(0,this.duration);return this},validate:function(){for(var a=!0,b=0;b<this.tracks.length;b++)a=a&&this.tracks[b].validate();return a},optimize:function(){for(var a=0;a<this.tracks.length;a++)this.tracks[a].optimize();return this},clone:function(){for(var a=[],b=0;b<this.tracks.length;b++)a.push(this.tracks[b].clone());return new Pa(this.name,this.duration,a)}});var uc={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={}}},ii=new wg;Object.assign(V.prototype,{load:function(){},parse:function(){},setCrossOrigin:function(a){this.crossOrigin=a;return this},setPath:function(a){this.path=a;return this},setResourcePath:function(a){this.resourcePath=a;return this}});var bb={};Qa.prototype=Object.assign(Object.create(V.prototype),{constructor:Qa,load:function(a,
|
|
|
+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={}}},ji=new wg;Object.assign(V.prototype,{load:function(){},parse:function(){},setCrossOrigin:function(a){this.crossOrigin=a;return this},setPath:function(a){this.path=a;return this},setResourcePath:function(a){this.resourcePath=a;return this}});var bb={};Qa.prototype=Object.assign(Object.create(V.prototype),{constructor:Qa,load:function(a,
|
|
|
b,c,d){void 0===a&&(a="");void 0!==this.path&&(a=this.path+a);a=this.manager.resolveURL(a);var e=this,f=uc.get(a);if(void 0!==f)return e.manager.itemStart(a),setTimeout(function(){b&&b(f);e.manager.itemEnd(a)},0),f;if(void 0!==bb[a])bb[a].push({onLoad:b,onProgress:c,onError:d});else{var g=a.match(/^data:(.*?)(;base64)?,(.*)$/);if(g){c=g[1];var k=!!g[2];g=g[3];g=decodeURIComponent(g);k&&(g=atob(g));try{var h=(this.responseType||"").toLowerCase();switch(h){case "arraybuffer":case "blob":var m=new Uint8Array(g.length);
|
|
|
for(k=0;k<g.length;k++)m[k]=g.charCodeAt(k);var n="blob"===h?new Blob([m.buffer],{type:c}):m.buffer;break;case "document":n=(new DOMParser).parseFromString(g,c);break;case "json":n=JSON.parse(g);break;default:n=g}setTimeout(function(){b&&b(n);e.manager.itemEnd(a)},0)}catch(q){setTimeout(function(){d&&d(q);e.manager.itemError(a);e.manager.itemEnd(a)},0)}}else{bb[a]=[];bb[a].push({onLoad:b,onProgress:c,onError:d});var p=new XMLHttpRequest;p.open("GET",a,!0);p.addEventListener("load",function(b){var c=
|
|
|
this.response,d=bb[a];delete bb[a];if(200===this.status||0===this.status){0===this.status&&console.warn("THREE.FileLoader: HTTP Status 0 received.");uc.add(a,c);for(var f=0,g=d.length;f<g;f++){var k=d[f];if(k.onLoad)k.onLoad(c)}}else{f=0;for(g=d.length;f<g;f++)if(k=d[f],k.onError)k.onError(b);e.manager.itemError(a)}e.manager.itemEnd(a)},!1);p.addEventListener("progress",function(b){for(var c=bb[a],d=0,e=c.length;d<e;d++){var f=c[d];if(f.onProgress)f.onProgress(b)}},!1);p.addEventListener("error",
|
|
@@ -777,9 +777,9 @@ c).normalize();e[0].crossVectors(d[0],g);f[0].crossVectors(d[0],e[0]);for(h=1;h<
|
|
|
e[h]);return{tangents:d,normals:e,binormals:f}},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.arcLengthDivisions=a.arcLengthDivisions;return this},toJSON:function(){var a={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};a.arcLengthDivisions=this.arcLengthDivisions;a.type=this.type;return a},fromJSON:function(a){this.arcLengthDivisions=a.arcLengthDivisions;return this}});La.prototype=Object.create(I.prototype);La.prototype.constructor=La;La.prototype.isEllipseCurve=
|
|
|
!0;La.prototype.getPoint=function(a,b){b=b||new v;for(var c=2*Math.PI,d=this.aEndAngle-this.aStartAngle,e=Math.abs(d)<Number.EPSILON;0>d;)d+=c;for(;d>c;)d-=c;d<Number.EPSILON&&(d=e?0:c);!0!==this.aClockwise||e||(d=d===c?-c:d-c);c=this.aStartAngle+a*d;a=this.aX+this.xRadius*Math.cos(c);var f=this.aY+this.yRadius*Math.sin(c);0!==this.aRotation&&(c=Math.cos(this.aRotation),d=Math.sin(this.aRotation),e=a-this.aX,f-=this.aY,a=e*c-f*d+this.aX,f=e*d+f*c+this.aY);return b.set(a,f)};La.prototype.copy=function(a){I.prototype.copy.call(this,
|
|
|
a);this.aX=a.aX;this.aY=a.aY;this.xRadius=a.xRadius;this.yRadius=a.yRadius;this.aStartAngle=a.aStartAngle;this.aEndAngle=a.aEndAngle;this.aClockwise=a.aClockwise;this.aRotation=a.aRotation;return this};La.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.aX=this.aX;a.aY=this.aY;a.xRadius=this.xRadius;a.yRadius=this.yRadius;a.aStartAngle=this.aStartAngle;a.aEndAngle=this.aEndAngle;a.aClockwise=this.aClockwise;a.aRotation=this.aRotation;return a};La.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,
|
|
|
-a);this.aX=a.aX;this.aY=a.aY;this.xRadius=a.xRadius;this.yRadius=a.yRadius;this.aStartAngle=a.aStartAngle;this.aEndAngle=a.aEndAngle;this.aClockwise=a.aClockwise;this.aRotation=a.aRotation;return this};fd.prototype=Object.create(La.prototype);fd.prototype.constructor=fd;fd.prototype.isArcCurve=!0;var Tf=new n,oh=new zg,ph=new zg,qh=new zg;za.prototype=Object.create(I.prototype);za.prototype.constructor=za;za.prototype.isCatmullRomCurve3=!0;za.prototype.getPoint=function(a,b){b=b||new n;var c=this.points,
|
|
|
+a);this.aX=a.aX;this.aY=a.aY;this.xRadius=a.xRadius;this.yRadius=a.yRadius;this.aStartAngle=a.aStartAngle;this.aEndAngle=a.aEndAngle;this.aClockwise=a.aClockwise;this.aRotation=a.aRotation;return this};fd.prototype=Object.create(La.prototype);fd.prototype.constructor=fd;fd.prototype.isArcCurve=!0;var Tf=new n,ph=new zg,qh=new zg,rh=new zg;za.prototype=Object.create(I.prototype);za.prototype.constructor=za;za.prototype.isCatmullRomCurve3=!0;za.prototype.getPoint=function(a,b){b=b||new n;var c=this.points,
|
|
|
d=c.length;a*=d-(this.closed?0:1);var e=Math.floor(a);a-=e;this.closed?e+=0<e?0:(Math.floor(Math.abs(e)/d)+1)*d:0===a&&e===d-1&&(e=d-2,a=1);if(this.closed||0<e)var f=c[(e-1)%d];else Tf.subVectors(c[0],c[1]).add(c[0]),f=Tf;var g=c[e%d];var h=c[(e+1)%d];this.closed||e+2<d?c=c[(e+2)%d]:(Tf.subVectors(c[d-1],c[d-2]).add(c[d-1]),c=Tf);if("centripetal"===this.curveType||"chordal"===this.curveType){var l="chordal"===this.curveType?.5:.25;d=Math.pow(f.distanceToSquared(g),l);e=Math.pow(g.distanceToSquared(h),
|
|
|
-l);l=Math.pow(h.distanceToSquared(c),l);1E-4>e&&(e=1);1E-4>d&&(d=e);1E-4>l&&(l=e);oh.initNonuniformCatmullRom(f.x,g.x,h.x,c.x,d,e,l);ph.initNonuniformCatmullRom(f.y,g.y,h.y,c.y,d,e,l);qh.initNonuniformCatmullRom(f.z,g.z,h.z,c.z,d,e,l)}else"catmullrom"===this.curveType&&(oh.initCatmullRom(f.x,g.x,h.x,c.x,this.tension),ph.initCatmullRom(f.y,g.y,h.y,c.y,this.tension),qh.initCatmullRom(f.z,g.z,h.z,c.z,this.tension));b.set(oh.calc(a),ph.calc(a),qh.calc(a));return b};za.prototype.copy=function(a){I.prototype.copy.call(this,
|
|
|
+l);l=Math.pow(h.distanceToSquared(c),l);1E-4>e&&(e=1);1E-4>d&&(d=e);1E-4>l&&(l=e);ph.initNonuniformCatmullRom(f.x,g.x,h.x,c.x,d,e,l);qh.initNonuniformCatmullRom(f.y,g.y,h.y,c.y,d,e,l);rh.initNonuniformCatmullRom(f.z,g.z,h.z,c.z,d,e,l)}else"catmullrom"===this.curveType&&(ph.initCatmullRom(f.x,g.x,h.x,c.x,this.tension),qh.initCatmullRom(f.y,g.y,h.y,c.y,this.tension),rh.initCatmullRom(f.z,g.z,h.z,c.z,this.tension));b.set(ph.calc(a),qh.calc(a),rh.calc(a));return b};za.prototype.copy=function(a){I.prototype.copy.call(this,
|
|
|
a);this.points=[];for(var b=0,c=a.points.length;b<c;b++)this.points.push(a.points[b].clone());this.closed=a.closed;this.curveType=a.curveType;this.tension=a.tension;return this};za.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.points=[];for(var b=0,c=this.points.length;b<c;b++)a.points.push(this.points[b].toArray());a.closed=this.closed;a.curveType=this.curveType;a.tension=this.tension;return a};za.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.points=[];
|
|
|
for(var b=0,c=a.points.length;b<c;b++){var d=a.points[b];this.points.push((new n).fromArray(d))}this.closed=a.closed;this.curveType=a.curveType;this.tension=a.tension;return this};Va.prototype=Object.create(I.prototype);Va.prototype.constructor=Va;Va.prototype.isCubicBezierCurve=!0;Va.prototype.getPoint=function(a,b){b=b||new v;var c=this.v0,d=this.v1,e=this.v2,f=this.v3;b.set(re(a,c.x,d.x,e.x,f.x),re(a,c.y,d.y,e.y,f.y));return b};Va.prototype.copy=function(a){I.prototype.copy.call(this,a);this.v0.copy(a.v0);
|
|
|
this.v1.copy(a.v1);this.v2.copy(a.v2);this.v3.copy(a.v3);return this};Va.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.v0=this.v0.toArray();a.v1=this.v1.toArray();a.v2=this.v2.toArray();a.v3=this.v3.toArray();return a};Va.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.v0.fromArray(a.v0);this.v1.fromArray(a.v1);this.v2.fromArray(a.v2);this.v3.fromArray(a.v3);return this};gb.prototype=Object.create(I.prototype);gb.prototype.constructor=gb;gb.prototype.isCubicBezierCurve3=
|
|
@@ -790,12 +790,12 @@ new n;1===a?b.copy(this.v2):(b.copy(this.v2).sub(this.v1),b.multiplyScalar(a).ad
|
|
|
return this};Xa.prototype=Object.create(I.prototype);Xa.prototype.constructor=Xa;Xa.prototype.isQuadraticBezierCurve=!0;Xa.prototype.getPoint=function(a,b){b=b||new v;var c=this.v0,d=this.v1,e=this.v2;b.set(qe(a,c.x,d.x,e.x),qe(a,c.y,d.y,e.y));return b};Xa.prototype.copy=function(a){I.prototype.copy.call(this,a);this.v0.copy(a.v0);this.v1.copy(a.v1);this.v2.copy(a.v2);return this};Xa.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.v0=this.v0.toArray();a.v1=this.v1.toArray();a.v2=
|
|
|
this.v2.toArray();return a};Xa.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.v0.fromArray(a.v0);this.v1.fromArray(a.v1);this.v2.fromArray(a.v2);return this};hb.prototype=Object.create(I.prototype);hb.prototype.constructor=hb;hb.prototype.isQuadraticBezierCurve3=!0;hb.prototype.getPoint=function(a,b){b=b||new n;var c=this.v0,d=this.v1,e=this.v2;b.set(qe(a,c.x,d.x,e.x),qe(a,c.y,d.y,e.y),qe(a,c.z,d.z,e.z));return b};hb.prototype.copy=function(a){I.prototype.copy.call(this,a);
|
|
|
this.v0.copy(a.v0);this.v1.copy(a.v1);this.v2.copy(a.v2);return this};hb.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.v0=this.v0.toArray();a.v1=this.v1.toArray();a.v2=this.v2.toArray();return a};hb.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.v0.fromArray(a.v0);this.v1.fromArray(a.v1);this.v2.fromArray(a.v2);return this};Ya.prototype=Object.create(I.prototype);Ya.prototype.constructor=Ya;Ya.prototype.isSplineCurve=!0;Ya.prototype.getPoint=function(a,b){b=
|
|
|
-b||new v;var c=this.points,d=(c.length-1)*a;a=Math.floor(d);d-=a;var e=c[0===a?a:a-1],f=c[a],g=c[a>c.length-2?c.length-1:a+1];c=c[a>c.length-3?c.length-1:a+2];b.set(ji(d,e.x,f.x,g.x,c.x),ji(d,e.y,f.y,g.y,c.y));return b};Ya.prototype.copy=function(a){I.prototype.copy.call(this,a);this.points=[];for(var b=0,c=a.points.length;b<c;b++)this.points.push(a.points[b].clone());return this};Ya.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.points=[];for(var b=0,c=this.points.length;b<c;b++)a.points.push(this.points[b].toArray());
|
|
|
-return a};Ya.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.points=[];for(var b=0,c=a.points.length;b<c;b++){var d=a.points[b];this.points.push((new v).fromArray(d))}return this};var rh=Object.freeze({__proto__:null,ArcCurve:fd,CatmullRomCurve3:za,CubicBezierCurve:Va,CubicBezierCurve3:gb,EllipseCurve:La,LineCurve:Da,LineCurve3:Wa,QuadraticBezierCurve:Xa,QuadraticBezierCurve3:hb,SplineCurve:Ya});ub.prototype=Object.assign(Object.create(I.prototype),{constructor:ub,add:function(a){this.curves.push(a)},
|
|
|
+b||new v;var c=this.points,d=(c.length-1)*a;a=Math.floor(d);d-=a;var e=c[0===a?a:a-1],f=c[a],g=c[a>c.length-2?c.length-1:a+1];c=c[a>c.length-3?c.length-1:a+2];b.set(ki(d,e.x,f.x,g.x,c.x),ki(d,e.y,f.y,g.y,c.y));return b};Ya.prototype.copy=function(a){I.prototype.copy.call(this,a);this.points=[];for(var b=0,c=a.points.length;b<c;b++)this.points.push(a.points[b].clone());return this};Ya.prototype.toJSON=function(){var a=I.prototype.toJSON.call(this);a.points=[];for(var b=0,c=this.points.length;b<c;b++)a.points.push(this.points[b].toArray());
|
|
|
+return a};Ya.prototype.fromJSON=function(a){I.prototype.fromJSON.call(this,a);this.points=[];for(var b=0,c=a.points.length;b<c;b++){var d=a.points[b];this.points.push((new v).fromArray(d))}return this};var sh=Object.freeze({__proto__:null,ArcCurve:fd,CatmullRomCurve3:za,CubicBezierCurve:Va,CubicBezierCurve3:gb,EllipseCurve:La,LineCurve:Da,LineCurve3:Wa,QuadraticBezierCurve:Xa,QuadraticBezierCurve3:hb,SplineCurve:Ya});ub.prototype=Object.assign(Object.create(I.prototype),{constructor:ub,add:function(a){this.curves.push(a)},
|
|
|
closePath:function(){var a=this.curves[0].getPoint(0),b=this.curves[this.curves.length-1].getPoint(1);a.equals(b)||this.curves.push(new Da(b,a))},getPoint:function(a){var b=a*this.getLength(),c=this.getCurveLengths();for(a=0;a<c.length;){if(c[a]>=b)return b=c[a]-b,a=this.curves[a],c=a.getLength(),a.getPointAt(0===c?0:1-b/c);a++}return null},getLength:function(){var a=this.getCurveLengths();return a[a.length-1]},updateArcLengths:function(){this.needsUpdate=!0;this.cacheLengths=null;this.getCurveLengths()},
|
|
|
getCurveLengths:function(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var a=[],b=0,c=0,d=this.curves.length;c<d;c++)b+=this.curves[c].getLength(),a.push(b);return this.cacheLengths=a},getSpacedPoints:function(a){void 0===a&&(a=40);for(var b=[],c=0;c<=a;c++)b.push(this.getPoint(c/a));this.autoClose&&b.push(b[0]);return b},getPoints:function(a){a=a||12;for(var b=[],c,d=0,e=this.curves;d<e.length;d++){var f=e[d];f=f.getPoints(f&&f.isEllipseCurve?
|
|
|
2*a:f&&(f.isLineCurve||f.isLineCurve3)?1:f&&f.isSplineCurve?a*f.points.length:a);for(var g=0;g<f.length;g++){var h=f[g];c&&c.equals(h)||(b.push(h),c=h)}}this.autoClose&&1<b.length&&!b[b.length-1].equals(b[0])&&b.push(b[0]);return b},copy:function(a){I.prototype.copy.call(this,a);this.curves=[];for(var b=0,c=a.curves.length;b<c;b++)this.curves.push(a.curves[b].clone());this.autoClose=a.autoClose;return this},toJSON:function(){var a=I.prototype.toJSON.call(this);a.autoClose=this.autoClose;a.curves=
|
|
|
-[];for(var b=0,c=this.curves.length;b<c;b++)a.curves.push(this.curves[b].toJSON());return a},fromJSON:function(a){I.prototype.fromJSON.call(this,a);this.autoClose=a.autoClose;this.curves=[];for(var b=0,c=a.curves.length;b<c;b++){var d=a.curves[b];this.curves.push((new rh[d.type]).fromJSON(d))}return this}});Za.prototype=Object.assign(Object.create(ub.prototype),{constructor:Za,setFromPoints:function(a){this.moveTo(a[0].x,a[0].y);for(var b=1,c=a.length;b<c;b++)this.lineTo(a[b].x,a[b].y);return this},
|
|
|
+[];for(var b=0,c=this.curves.length;b<c;b++)a.curves.push(this.curves[b].toJSON());return a},fromJSON:function(a){I.prototype.fromJSON.call(this,a);this.autoClose=a.autoClose;this.curves=[];for(var b=0,c=a.curves.length;b<c;b++){var d=a.curves[b];this.curves.push((new sh[d.type]).fromJSON(d))}return this}});Za.prototype=Object.assign(Object.create(ub.prototype),{constructor:Za,setFromPoints:function(a){this.moveTo(a[0].x,a[0].y);for(var b=1,c=a.length;b<c;b++)this.lineTo(a[b].x,a[b].y);return this},
|
|
|
moveTo:function(a,b){this.currentPoint.set(a,b);return this},lineTo:function(a,b){var c=new Da(this.currentPoint.clone(),new v(a,b));this.curves.push(c);this.currentPoint.set(a,b);return this},quadraticCurveTo:function(a,b,c,d){a=new Xa(this.currentPoint.clone(),new v(a,b),new v(c,d));this.curves.push(a);this.currentPoint.set(c,d);return this},bezierCurveTo:function(a,b,c,d,e,f){a=new Va(this.currentPoint.clone(),new v(a,b),new v(c,d),new v(e,f));this.curves.push(a);this.currentPoint.set(e,f);return this},
|
|
|
splineThru:function(a){var b=[this.currentPoint.clone()].concat(a);b=new Ya(b);this.curves.push(b);this.currentPoint.copy(a[a.length-1]);return this},arc:function(a,b,c,d,e,f){this.absarc(a+this.currentPoint.x,b+this.currentPoint.y,c,d,e,f);return this},absarc:function(a,b,c,d,e,f){this.absellipse(a,b,c,c,d,e,f);return this},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);return this},absellipse:function(a,b,c,d,e,f,g,h){a=new La(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);return this},copy:function(a){ub.prototype.copy.call(this,a);this.currentPoint.copy(a.currentPoint);return this},toJSON:function(){var a=ub.prototype.toJSON.call(this);a.currentPoint=this.currentPoint.toArray();return a},fromJSON:function(a){ub.prototype.fromJSON.call(this,a);this.currentPoint.fromArray(a.currentPoint);return this}});Jb.prototype=
|
|
@@ -823,19 +823,19 @@ a.polygonOffsetUnits);void 0!==a.skinning&&(d.skinning=a.skinning);void 0!==a.mo
|
|
|
a.matcap&&(d.matcap=b(a.matcap));void 0!==a.alphaMap&&(d.alphaMap=b(a.alphaMap),d.transparent=!0);void 0!==a.bumpMap&&(d.bumpMap=b(a.bumpMap));void 0!==a.bumpScale&&(d.bumpScale=a.bumpScale);void 0!==a.normalMap&&(d.normalMap=b(a.normalMap));void 0!==a.normalMapType&&(d.normalMapType=a.normalMapType);void 0!==a.normalScale&&(e=a.normalScale,!1===Array.isArray(e)&&(e=[e,e]),d.normalScale=(new v).fromArray(e));void 0!==a.displacementMap&&(d.displacementMap=b(a.displacementMap));void 0!==a.displacementScale&&
|
|
|
(d.displacementScale=a.displacementScale);void 0!==a.displacementBias&&(d.displacementBias=a.displacementBias);void 0!==a.roughnessMap&&(d.roughnessMap=b(a.roughnessMap));void 0!==a.metalnessMap&&(d.metalnessMap=b(a.metalnessMap));void 0!==a.emissiveMap&&(d.emissiveMap=b(a.emissiveMap));void 0!==a.emissiveIntensity&&(d.emissiveIntensity=a.emissiveIntensity);void 0!==a.specularMap&&(d.specularMap=b(a.specularMap));void 0!==a.envMap&&(d.envMap=b(a.envMap));void 0!==a.envMapIntensity&&(d.envMapIntensity=
|
|
|
a.envMapIntensity);void 0!==a.reflectivity&&(d.reflectivity=a.reflectivity);void 0!==a.refractionRatio&&(d.refractionRatio=a.refractionRatio);void 0!==a.lightMap&&(d.lightMap=b(a.lightMap));void 0!==a.lightMapIntensity&&(d.lightMapIntensity=a.lightMapIntensity);void 0!==a.aoMap&&(d.aoMap=b(a.aoMap));void 0!==a.aoMapIntensity&&(d.aoMapIntensity=a.aoMapIntensity);void 0!==a.gradientMap&&(d.gradientMap=b(a.gradientMap));void 0!==a.clearcoatNormalMap&&(d.clearcoatNormalMap=b(a.clearcoatNormalMap));void 0!==
|
|
|
-a.clearcoatNormalScale&&(d.clearcoatNormalScale=(new v).fromArray(a.clearcoatNormalScale));return d},setTextures:function(a){this.textures=a;return this}});var sh={decodeText:function(a){if("undefined"!==typeof TextDecoder)return(new TextDecoder).decode(a);for(var b="",c=0,d=a.length;c<d;c++)b+=String.fromCharCode(a[c]);try{return decodeURIComponent(escape(b))}catch(e){return b}},extractUrlBase:function(a){var b=a.lastIndexOf("/");return-1===b?"./":a.substr(0,b+1)}};of.prototype=Object.assign(Object.create(A.prototype),
|
|
|
+a.clearcoatNormalScale&&(d.clearcoatNormalScale=(new v).fromArray(a.clearcoatNormalScale));return d},setTextures:function(a){this.textures=a;return this}});var th={decodeText:function(a){if("undefined"!==typeof TextDecoder)return(new TextDecoder).decode(a);for(var b="",c=0,d=a.length;c<d;c++)b+=String.fromCharCode(a[c]);try{return decodeURIComponent(escape(b))}catch(e){return b}},extractUrlBase:function(a){var b=a.lastIndexOf("/");return-1===b?"./":a.substr(0,b+1)}};of.prototype=Object.assign(Object.create(A.prototype),
|
|
|
{constructor:of,isInstancedBufferGeometry:!0,copy:function(a){A.prototype.copy.call(this,a);this.maxInstancedCount=a.maxInstancedCount;return this},clone:function(){return(new this.constructor).copy(this)},toJSON:function(){var a=A.prototype.toJSON.call(this);a.maxInstancedCount=this.maxInstancedCount;a.isInstancedBufferGeometry=!0;return a}});pf.prototype=Object.assign(Object.create(L.prototype),{constructor:pf,isInstancedBufferAttribute:!0,copy:function(a){L.prototype.copy.call(this,a);this.meshPerAttribute=
|
|
|
-a.meshPerAttribute;return this},toJSON:function(){var a=L.prototype.toJSON.call(this);a.meshPerAttribute=this.meshPerAttribute;a.isInstancedBufferAttribute=!0;return a}});qf.prototype=Object.assign(Object.create(V.prototype),{constructor:qf,load:function(a,b,c,d){var e=this,f=new Qa(e.manager);f.setPath(e.path);f.load(a,function(a){b(e.parse(JSON.parse(a)))},c,d)},parse:function(a){var b=a.isInstancedBufferGeometry?new of:new A,c=a.data.index;if(void 0!==c){var d=new th[c.type](c.array);b.setIndex(new L(d,
|
|
|
-1))}c=a.data.attributes;for(var e in c){var f=c[e];d=new th[f.type](f.array);d=new (f.isInstancedBufferAttribute?pf:L)(d,f.itemSize,f.normalized);void 0!==f.name&&(d.name=f.name);b.setAttribute(e,d)}var g=a.data.morphAttributes;if(g)for(e in g){var h=g[e],l=[];c=0;for(var m=h.length;c<m;c++)f=h[c],d=new th[f.type](f.array),d=new L(d,f.itemSize,f.normalized),void 0!==f.name&&(d.name=f.name),l.push(d);b.morphAttributes[e]=l}a.data.morphTargetsRelative&&(b.morphTargetsRelative=!0);e=a.data.groups||a.data.drawcalls||
|
|
|
-a.data.offsets;if(void 0!==e)for(c=0,f=e.length;c!==f;++c)d=e[c],b.addGroup(d.start,d.count,d.materialIndex);c=a.data.boundingSphere;void 0!==c&&(e=new n,void 0!==c.center&&e.fromArray(c.center),b.boundingSphere=new ob(e,c.radius));a.name&&(b.name=a.name);a.userData&&(b.userData=a.userData);return b}});var th={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:"undefined"!==typeof Uint8ClampedArray?Uint8ClampedArray:Uint8Array,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,
|
|
|
-Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};rf.prototype=Object.assign(Object.create(V.prototype),{constructor:rf,load:function(a,b,c,d){var e=this,f=""===this.path?sh.extractUrlBase(a):this.path;this.resourcePath=this.resourcePath||f;f=new Qa(e.manager);f.setPath(this.path);f.load(a,function(c){var f=null;try{f=JSON.parse(c)}catch(l){void 0!==d&&d(l);console.error("THREE:ObjectLoader: Can't parse "+a+".",l.message);return}c=f.metadata;void 0===c||void 0===c.type||
|
|
|
+a.meshPerAttribute;return this},toJSON:function(){var a=L.prototype.toJSON.call(this);a.meshPerAttribute=this.meshPerAttribute;a.isInstancedBufferAttribute=!0;return a}});qf.prototype=Object.assign(Object.create(V.prototype),{constructor:qf,load:function(a,b,c,d){var e=this,f=new Qa(e.manager);f.setPath(e.path);f.load(a,function(a){b(e.parse(JSON.parse(a)))},c,d)},parse:function(a){var b=a.isInstancedBufferGeometry?new of:new A,c=a.data.index;if(void 0!==c){var d=new uh[c.type](c.array);b.setIndex(new L(d,
|
|
|
+1))}c=a.data.attributes;for(var e in c){var f=c[e];d=new uh[f.type](f.array);d=new (f.isInstancedBufferAttribute?pf:L)(d,f.itemSize,f.normalized);void 0!==f.name&&(d.name=f.name);b.setAttribute(e,d)}var g=a.data.morphAttributes;if(g)for(e in g){var h=g[e],l=[];c=0;for(var m=h.length;c<m;c++)f=h[c],d=new uh[f.type](f.array),d=new L(d,f.itemSize,f.normalized),void 0!==f.name&&(d.name=f.name),l.push(d);b.morphAttributes[e]=l}a.data.morphTargetsRelative&&(b.morphTargetsRelative=!0);e=a.data.groups||a.data.drawcalls||
|
|
|
+a.data.offsets;if(void 0!==e)for(c=0,f=e.length;c!==f;++c)d=e[c],b.addGroup(d.start,d.count,d.materialIndex);c=a.data.boundingSphere;void 0!==c&&(e=new n,void 0!==c.center&&e.fromArray(c.center),b.boundingSphere=new ob(e,c.radius));a.name&&(b.name=a.name);a.userData&&(b.userData=a.userData);return b}});var uh={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:"undefined"!==typeof Uint8ClampedArray?Uint8ClampedArray:Uint8Array,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,
|
|
|
+Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};rf.prototype=Object.assign(Object.create(V.prototype),{constructor:rf,load:function(a,b,c,d){var e=this,f=""===this.path?th.extractUrlBase(a):this.path;this.resourcePath=this.resourcePath||f;f=new Qa(e.manager);f.setPath(this.path);f.load(a,function(c){var f=null;try{f=JSON.parse(c)}catch(l){void 0!==d&&d(l);console.error("THREE:ObjectLoader: Can't parse "+a+".",l.message);return}c=f.metadata;void 0===c||void 0===c.type||
|
|
|
"geometry"===c.type.toLowerCase()?console.error("THREE.ObjectLoader: Can't load "+a):e.parse(f,b)},c,d)},parse:function(a,b){var c=this.parseShape(a.shapes);c=this.parseGeometries(a.geometries,c);var d=this.parseImages(a.images,function(){void 0!==b&&b(e)});d=this.parseTextures(a.textures,d);d=this.parseMaterials(a.materials,d);var e=this.parseObject(a.object,c,d);a.animations&&(e.animations=this.parseAnimations(a.animations));void 0!==a.images&&0!==a.images.length||void 0===b||b(e);return e},parseShape:function(a){var b=
|
|
|
{};if(void 0!==a)for(var c=0,d=a.length;c<d;c++){var e=(new Jb).fromJSON(a[c]);b[e.uuid]=e}return b},parseGeometries:function(a,b){var c={};if(void 0!==a)for(var d=new qf,e=0,f=a.length;e<f;e++){var g=a[e];switch(g.type){case "PlaneGeometry":case "PlaneBufferGeometry":var h=new va[g.type](g.width,g.height,g.widthSegments,g.heightSegments);break;case "BoxGeometry":case "BoxBufferGeometry":case "CubeGeometry":h=new va[g.type](g.width,g.height,g.depth,g.widthSegments,g.heightSegments,g.depthSegments);
|
|
|
break;case "CircleGeometry":case "CircleBufferGeometry":h=new va[g.type](g.radius,g.segments,g.thetaStart,g.thetaLength);break;case "CylinderGeometry":case "CylinderBufferGeometry":h=new va[g.type](g.radiusTop,g.radiusBottom,g.height,g.radialSegments,g.heightSegments,g.openEnded,g.thetaStart,g.thetaLength);break;case "ConeGeometry":case "ConeBufferGeometry":h=new va[g.type](g.radius,g.height,g.radialSegments,g.heightSegments,g.openEnded,g.thetaStart,g.thetaLength);break;case "SphereGeometry":case "SphereBufferGeometry":h=
|
|
|
new va[g.type](g.radius,g.widthSegments,g.heightSegments,g.phiStart,g.phiLength,g.thetaStart,g.thetaLength);break;case "DodecahedronGeometry":case "DodecahedronBufferGeometry":case "IcosahedronGeometry":case "IcosahedronBufferGeometry":case "OctahedronGeometry":case "OctahedronBufferGeometry":case "TetrahedronGeometry":case "TetrahedronBufferGeometry":h=new va[g.type](g.radius,g.detail);break;case "RingGeometry":case "RingBufferGeometry":h=new va[g.type](g.innerRadius,g.outerRadius,g.thetaSegments,
|
|
|
-g.phiSegments,g.thetaStart,g.thetaLength);break;case "TorusGeometry":case "TorusBufferGeometry":h=new va[g.type](g.radius,g.tube,g.radialSegments,g.tubularSegments,g.arc);break;case "TorusKnotGeometry":case "TorusKnotBufferGeometry":h=new va[g.type](g.radius,g.tube,g.tubularSegments,g.radialSegments,g.p,g.q);break;case "TubeGeometry":case "TubeBufferGeometry":h=new va[g.type]((new rh[g.path.type]).fromJSON(g.path),g.tubularSegments,g.radius,g.radialSegments,g.closed);break;case "LatheGeometry":case "LatheBufferGeometry":h=
|
|
|
+g.phiSegments,g.thetaStart,g.thetaLength);break;case "TorusGeometry":case "TorusBufferGeometry":h=new va[g.type](g.radius,g.tube,g.radialSegments,g.tubularSegments,g.arc);break;case "TorusKnotGeometry":case "TorusKnotBufferGeometry":h=new va[g.type](g.radius,g.tube,g.tubularSegments,g.radialSegments,g.p,g.q);break;case "TubeGeometry":case "TubeBufferGeometry":h=new va[g.type]((new sh[g.path.type]).fromJSON(g.path),g.tubularSegments,g.radius,g.radialSegments,g.closed);break;case "LatheGeometry":case "LatheBufferGeometry":h=
|
|
|
new va[g.type](g.points,g.segments,g.phiStart,g.phiLength);break;case "PolyhedronGeometry":case "PolyhedronBufferGeometry":h=new va[g.type](g.vertices,g.indices,g.radius,g.details);break;case "ShapeGeometry":case "ShapeBufferGeometry":h=[];for(var l=0,m=g.shapes.length;l<m;l++){var n=b[g.shapes[l]];h.push(n)}h=new va[g.type](h,g.curveSegments);break;case "ExtrudeGeometry":case "ExtrudeBufferGeometry":h=[];l=0;for(m=g.shapes.length;l<m;l++)n=b[g.shapes[l]],h.push(n);l=g.options.extrudePath;void 0!==
|
|
|
-l&&(g.options.extrudePath=(new rh[l.type]).fromJSON(l));h=new va[g.type](h,g.options);break;case "BufferGeometry":case "InstancedBufferGeometry":h=d.parse(g);break;case "Geometry":console.error('THREE.ObjectLoader: Loading "Geometry" is not supported anymore.');break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+g.type+'"');continue}h.uuid=g.uuid;void 0!==g.name&&(h.name=g.name);!0===h.isBufferGeometry&&void 0!==g.userData&&(h.userData=g.userData);c[g.uuid]=h}return c},parseMaterials:function(a,
|
|
|
+l&&(g.options.extrudePath=(new sh[l.type]).fromJSON(l));h=new va[g.type](h,g.options);break;case "BufferGeometry":case "InstancedBufferGeometry":h=d.parse(g);break;case "Geometry":console.error('THREE.ObjectLoader: Loading "Geometry" is not supported anymore.');break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+g.type+'"');continue}h.uuid=g.uuid;void 0!==g.name&&(h.name=g.name);!0===h.isBufferGeometry&&void 0!==g.userData&&(h.userData=g.userData);c[g.uuid]=h}return c},parseMaterials:function(a,
|
|
|
b){var c={},d={};if(void 0!==a){var e=new nf;e.setTextures(b);b=0;for(var f=a.length;b<f;b++){var g=a[b];if("MultiMaterial"===g.type){for(var h=[],l=0;l<g.materials.length;l++){var m=g.materials[l];void 0===c[m.uuid]&&(c[m.uuid]=e.parse(m));h.push(c[m.uuid])}d[g.uuid]=h}else void 0===c[g.uuid]&&(c[g.uuid]=e.parse(g)),d[g.uuid]=c[g.uuid]}}return d},parseAnimations:function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=Pa.parse(d);void 0!==d.uuid&&(e.uuid=d.uuid);b.push(e)}return b},parseImages:function(a,
|
|
|
b){function c(a){d.manager.itemStart(a);return f.load(a,function(){d.manager.itemEnd(a)},void 0,function(){d.manager.itemError(a);d.manager.itemEnd(a)})}var d=this,e={};if(void 0!==a&&0<a.length){b=new wg(b);var f=new ed(b);f.setCrossOrigin(this.crossOrigin);b=0;for(var g=a.length;b<g;b++){var h=a[b],l=h.url;if(Array.isArray(l)){e[h.uuid]=[];for(var m=0,n=l.length;m<n;m++){var p=l[m];p=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(p)?p:d.resourcePath+p;e[h.uuid].push(c(p))}}else p=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(h.url)?
|
|
|
h.url:d.resourcePath+h.url,e[h.uuid]=c(p)}}return e},parseTextures:function(a,b){function c(a,b){if("number"===typeof a)return a;console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",a);return b[a]}var d={};if(void 0!==a)for(var e=0,f=a.length;e<f;e++){var g=a[e];void 0===g.image&&console.warn('THREE.ObjectLoader: No "image" specified for',g.uuid);void 0===b[g.image]&&console.warn("THREE.ObjectLoader: Undefined image",g.image);var h=Array.isArray(b[g.image])?new pb(b[g.image]):
|
|
@@ -862,7 +862,7 @@ b.addScale(e[1],.488603*d);b.addScale(e[2],.488603*a);b.addScale(e[3],.488603*c)
|
|
|
d*a);b.addScale(e[6],.743125*a*a-.247708);b.addScale(e[7],.858086*c*a);b.addScale(e[8],.429043*(c*c-d*d));return b},add:function(a){for(var b=0;9>b;b++)this.coefficients[b].add(a.coefficients[b]);return this},scale:function(a){for(var b=0;9>b;b++)this.coefficients[b].multiplyScalar(a);return this},lerp:function(a,b){for(var c=0;9>c;c++)this.coefficients[c].lerp(a.coefficients[c],b);return this},equals:function(a){for(var b=0;9>b;b++)if(!this.coefficients[b].equals(a.coefficients[b]))return!1;return!0},
|
|
|
copy:function(a){return this.set(a.coefficients)},clone:function(){return(new this.constructor).copy(this)},fromArray:function(a,b){void 0===b&&(b=0);for(var c=this.coefficients,d=0;9>d;d++)c[d].fromArray(a,b+3*d);return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);for(var c=this.coefficients,d=0;9>d;d++)c[d].toArray(a,b+3*d);return a}});Object.assign(tf,{getBasisAt:function(a,b){var c=a.x,d=a.y;a=a.z;b[0]=.282095;b[1]=.488603*d;b[2]=.488603*a;b[3]=.488603*c;b[4]=1.092548*c*d;
|
|
|
b[5]=1.092548*d*a;b[6]=.315392*(3*a*a-1);b[7]=1.092548*c*a;b[8]=.546274*(c*c-d*d)}});$a.prototype=Object.assign(Object.create(ba.prototype),{constructor:$a,isLightProbe:!0,copy:function(a){ba.prototype.copy.call(this,a);this.sh.copy(a.sh);this.intensity=a.intensity;return this},toJSON:function(a){return ba.prototype.toJSON.call(this,a)}});Fg.prototype=Object.assign(Object.create($a.prototype),{constructor:Fg,isHemisphereLightProbe:!0,copy:function(a){$a.prototype.copy.call(this,a);return this},toJSON:function(a){return $a.prototype.toJSON.call(this,
|
|
|
-a)}});Gg.prototype=Object.assign(Object.create($a.prototype),{constructor:Gg,isAmbientLightProbe:!0,copy:function(a){$a.prototype.copy.call(this,a);return this},toJSON:function(a){return $a.prototype.toJSON.call(this,a)}});var bj=new P,cj=new P;Object.assign(ki.prototype,{update:function(a){var b=this._cache;if(b.focus!==a.focus||b.fov!==a.fov||b.aspect!==a.aspect*this.aspect||b.near!==a.near||b.far!==a.far||b.zoom!==a.zoom||b.eyeSep!==this.eyeSep){b.focus=a.focus;b.fov=a.fov;b.aspect=a.aspect*this.aspect;
|
|
|
+a)}});Gg.prototype=Object.assign(Object.create($a.prototype),{constructor:Gg,isAmbientLightProbe:!0,copy:function(a){$a.prototype.copy.call(this,a);return this},toJSON:function(a){return $a.prototype.toJSON.call(this,a)}});var bj=new P,cj=new P;Object.assign(li.prototype,{update:function(a){var b=this._cache;if(b.focus!==a.focus||b.fov!==a.fov||b.aspect!==a.aspect*this.aspect||b.near!==a.near||b.far!==a.far||b.zoom!==a.zoom||b.eyeSep!==this.eyeSep){b.focus=a.focus;b.fov=a.fov;b.aspect=a.aspect*this.aspect;
|
|
|
b.near=a.near;b.far=a.far;b.zoom=a.zoom;b.eyeSep=this.eyeSep;var c=a.projectionMatrix.clone(),d=b.eyeSep/2,e=d*b.near/b.focus,f=b.near*Math.tan(M.DEG2RAD*b.fov*.5)/b.zoom;cj.elements[12]=-d;bj.elements[12]=d;d=-f*b.aspect+e;var g=f*b.aspect+e;c.elements[0]=2*b.near/(g-d);c.elements[8]=(g+d)/(g-d);this.cameraL.projectionMatrix.copy(c);d=-f*b.aspect-e;g=f*b.aspect-e;c.elements[0]=2*b.near/(g-d);c.elements[8]=(g+d)/(g-d);this.cameraR.projectionMatrix.copy(c)}this.cameraL.matrixWorld.copy(a.matrixWorld).multiply(cj);
|
|
|
this.cameraR.matrixWorld.copy(a.matrixWorld).multiply(bj)}});Object.assign(Hg.prototype,{start:function(){this.oldTime=this.startTime=("undefined"===typeof performance?Date:performance).now();this.elapsedTime=0;this.running=!0},stop:function(){this.getElapsedTime();this.autoStart=this.running=!1},getElapsedTime:function(){this.getDelta();return this.elapsedTime},getDelta:function(){var a=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){var b=("undefined"===typeof performance?
|
|
|
Date:performance).now();a=(b-this.oldTime)/1E3;this.oldTime=b;this.elapsedTime+=a}return a}});var vc=new n,dj=new Ca,cl=new n,wc=new n;Ig.prototype=Object.assign(Object.create(E.prototype),{constructor:Ig,getInput:function(){return this.gain},removeFilter:function(){null!==this.filter&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null);return this},getFilter:function(){return this.filter},setFilter:function(a){null!==
|
|
@@ -881,8 +881,8 @@ a;this.panner.coneOuterAngle=b;this.panner.coneOuterGain=c;return this},updateMa
|
|
|
b);a.orientationY.linearRampToValueAtTime(yc.y,b);a.orientationZ.linearRampToValueAtTime(yc.z,b)}else a.setPosition(xc.x,xc.y,xc.z),a.setOrientation(yc.x,yc.y,yc.z)}});Object.assign(Lg.prototype,{getFrequencyData:function(){this.analyser.getByteFrequencyData(this.data);return this.data},getAverageFrequency:function(){for(var a=0,b=this.getFrequencyData(),c=0;c<b.length;c++)a+=b[c];return a/b.length}});Object.assign(Mg.prototype,{accumulate:function(a,b){var c=this.buffer,d=this.valueSize;a=a*d+d;
|
|
|
var e=this.cumulativeWeight;if(0===e){for(e=0;e!==d;++e)c[a+e]=c[e];e=b}else e+=b,this._mixBufferRegion(c,a,0,b/e,d);this.cumulativeWeight=e},apply:function(a){var b=this.valueSize,c=this.buffer;a=a*b+b;var d=this.cumulativeWeight,e=this.binding;this.cumulativeWeight=0;1>d&&this._mixBufferRegion(c,a,3*b,1-d,b);d=b;for(var f=b+b;d!==f;++d)if(c[d]!==c[d+b]){e.setValue(c,a);break}},saveOriginalState:function(){var a=this.buffer,b=this.valueSize,c=3*b;this.binding.getValue(a,c);for(var d=b;d!==c;++d)a[d]=
|
|
|
a[c+d%b];this.cumulativeWeight=0},restoreOriginalState:function(){this.binding.setValue(this.buffer,3*this.valueSize)},_select:function(a,b,c,d,e){if(.5<=d)for(d=0;d!==e;++d)a[b+d]=a[c+d]},_slerp:function(a,b,c,d){Ca.slerpFlat(a,b,a,b,a,c,d)},_lerp:function(a,b,c,d,e){for(var f=1-d,g=0;g!==e;++g){var h=b+g;a[h]=a[h]*f+a[c+g]*d}}});var el=/[\[\]\.:\/]/g,fl="[^"+"\\[\\]\\.:\\/".replace("\\.","")+"]",gl=/((?:WC+[\/:])*)/.source.replace("WC","[^\\[\\]\\.:\\/]"),hl=/(WCOD+)?/.source.replace("WCOD",fl),
|
|
|
-il=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC","[^\\[\\]\\.:\\/]"),jl=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC","[^\\[\\]\\.:\\/]"),kl=new RegExp("^"+gl+hl+il+jl+"$"),ll=["material","materials","bones"];Object.assign(li.prototype,{getValue:function(a,b){this.bind();var c=this._bindings[this._targetGroup.nCachedObjects_];void 0!==c&&c.getValue(a,b)},setValue:function(a,b){for(var c=this._bindings,d=this._targetGroup.nCachedObjects_,e=c.length;d!==e;++d)c[d].setValue(a,b)},bind:function(){for(var a=
|
|
|
-this._bindings,b=this._targetGroup.nCachedObjects_,c=a.length;b!==c;++b)a[b].bind()},unbind:function(){for(var a=this._bindings,b=this._targetGroup.nCachedObjects_,c=a.length;b!==c;++b)a[b].unbind()}});Object.assign(Aa,{Composite:li,create:function(a,b,c){return a&&a.isAnimationObjectGroup?new Aa.Composite(a,b,c):new Aa(a,b,c)},sanitizeNodeName:function(a){return a.replace(/\s/g,"_").replace(el,"")},parseTrackName:function(a){var b=kl.exec(a);if(!b)throw Error("PropertyBinding: Cannot parse trackName: "+
|
|
|
+il=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC","[^\\[\\]\\.:\\/]"),jl=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC","[^\\[\\]\\.:\\/]"),kl=new RegExp("^"+gl+hl+il+jl+"$"),ll=["material","materials","bones"];Object.assign(mi.prototype,{getValue:function(a,b){this.bind();var c=this._bindings[this._targetGroup.nCachedObjects_];void 0!==c&&c.getValue(a,b)},setValue:function(a,b){for(var c=this._bindings,d=this._targetGroup.nCachedObjects_,e=c.length;d!==e;++d)c[d].setValue(a,b)},bind:function(){for(var a=
|
|
|
+this._bindings,b=this._targetGroup.nCachedObjects_,c=a.length;b!==c;++b)a[b].bind()},unbind:function(){for(var a=this._bindings,b=this._targetGroup.nCachedObjects_,c=a.length;b!==c;++b)a[b].unbind()}});Object.assign(Aa,{Composite:mi,create:function(a,b,c){return a&&a.isAnimationObjectGroup?new Aa.Composite(a,b,c):new Aa(a,b,c)},sanitizeNodeName:function(a){return a.replace(/\s/g,"_").replace(el,"")},parseTrackName:function(a){var b=kl.exec(a);if(!b)throw Error("PropertyBinding: Cannot parse trackName: "+
|
|
|
a);b={nodeName:b[2],objectName:b[3],objectIndex:b[4],propertyName:b[5],propertyIndex:b[6]};var c=b.nodeName&&b.nodeName.lastIndexOf(".");if(void 0!==c&&-1!==c){var d=b.nodeName.substring(c+1);-1!==ll.indexOf(d)&&(b.nodeName=b.nodeName.substring(0,c),b.objectName=d)}if(null===b.propertyName||0===b.propertyName.length)throw Error("PropertyBinding: can not parse propertyName from trackName: "+a);return b},findNode:function(a,b){if(!b||""===b||"."===b||-1===b||b===a.name||b===a.uuid)return a;if(a.skeleton){var c=
|
|
|
a.skeleton.getBoneByName(b);if(void 0!==c)return c}if(a.children){var d=function(a){for(var c=0;c<a.length;c++){var e=a[c];if(e.name===b||e.uuid===b||(e=d(e.children)))return e}return null};if(a=d(a.children))return a}return null}});Object.assign(Aa.prototype,{_getValue_unavailable:function(){},_setValue_unavailable:function(){},BindingType:{Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},Versioning:{None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},GetterByBindingType:[function(a,b){a[b]=this.node[this.propertyName]},
|
|
|
function(a,b){for(var c=this.resolvedProperty,d=0,e=c.length;d!==e;++d)a[b++]=c[d]},function(a,b){a[b]=this.resolvedProperty[this.propertyIndex]},function(a,b){this.resolvedProperty.toArray(a,b)}],SetterByBindingTypeAndVersioning:[[function(a,b){this.targetObject[this.propertyName]=a[b]},function(a,b){this.targetObject[this.propertyName]=a[b];this.targetObject.needsUpdate=!0},function(a,b){this.targetObject[this.propertyName]=a[b];this.targetObject.matrixWorldNeedsUpdate=!0}],[function(a,b){for(var c=
|
|
@@ -893,11 +893,11 @@ break;case "bones":if(!a.skeleton){console.error("THREE.PropertyBinding: Can not
|
|
|
a[f]}}f=a[d];if(void 0===f)console.error("THREE.PropertyBinding: Trying to update property for track: "+b.nodeName+"."+d+" but it wasn't found.",a);else{b=this.Versioning.None;this.targetObject=a;void 0!==a.needsUpdate?b=this.Versioning.NeedsUpdate:void 0!==a.matrixWorldNeedsUpdate&&(b=this.Versioning.MatrixWorldNeedsUpdate);c=this.BindingType.Direct;if(void 0!==e){if("morphTargetInfluences"===d){if(!a.geometry){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",
|
|
|
this);return}if(a.geometry.isBufferGeometry){if(!a.geometry.morphAttributes){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);return}for(c=0;c<this.node.geometry.morphAttributes.position.length;c++)if(a.geometry.morphAttributes.position[c].name===e){e=c;break}}else{if(!a.geometry.morphTargets){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphTargets.",
|
|
|
this);return}for(c=0;c<this.node.geometry.morphTargets.length;c++)if(a.geometry.morphTargets[c].name===e){e=c;break}}}c=this.BindingType.ArrayElement;this.resolvedProperty=f;this.propertyIndex=e}else void 0!==f.fromArray&&void 0!==f.toArray?(c=this.BindingType.HasFromToArray,this.resolvedProperty=f):Array.isArray(f)?(c=this.BindingType.EntireArray,this.resolvedProperty=f):this.propertyName=d;this.getValue=this.GetterByBindingType[c];this.setValue=this.SetterByBindingTypeAndVersioning[c][b]}}else console.error("THREE.PropertyBinding: Trying to update node for track: "+
|
|
|
-this.path+" but it wasn't found.")},unbind:function(){this.node=null;this.getValue=this._getValue_unbound;this.setValue=this._setValue_unbound}});Object.assign(Aa.prototype,{_getValue_unbound:Aa.prototype.getValue,_setValue_unbound:Aa.prototype.setValue});Object.assign(mi.prototype,{isAnimationObjectGroup:!0,add:function(){for(var a=this._objects,b=a.length,c=this.nCachedObjects_,d=this._indicesByUUID,e=this._paths,f=this._parsedPaths,g=this._bindings,h=g.length,l=void 0,m=0,n=arguments.length;m!==
|
|
|
+this.path+" but it wasn't found.")},unbind:function(){this.node=null;this.getValue=this._getValue_unbound;this.setValue=this._setValue_unbound}});Object.assign(Aa.prototype,{_getValue_unbound:Aa.prototype.getValue,_setValue_unbound:Aa.prototype.setValue});Object.assign(ni.prototype,{isAnimationObjectGroup:!0,add:function(){for(var a=this._objects,b=a.length,c=this.nCachedObjects_,d=this._indicesByUUID,e=this._paths,f=this._parsedPaths,g=this._bindings,h=g.length,l=void 0,m=0,n=arguments.length;m!==
|
|
|
n;++m){var p=arguments[m],q=p.uuid,t=d[q];if(void 0===t){t=b++;d[q]=t;a.push(p);q=0;for(var r=h;q!==r;++q)g[q].push(new Aa(p,e[q],f[q]))}else if(t<c){l=a[t];var u=--c;r=a[u];d[r.uuid]=t;a[t]=r;d[q]=u;a[u]=p;q=0;for(r=h;q!==r;++q){var v=g[q],w=v[t];v[t]=v[u];void 0===w&&(w=new Aa(p,e[q],f[q]));v[u]=w}}else a[t]!==l&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.")}this.nCachedObjects_=
|
|
|
c},remove:function(){for(var a=this._objects,b=this.nCachedObjects_,c=this._indicesByUUID,d=this._bindings,e=d.length,f=0,g=arguments.length;f!==g;++f){var h=arguments[f],l=h.uuid,m=c[l];if(void 0!==m&&m>=b){var n=b++,p=a[n];c[p.uuid]=m;a[m]=p;c[l]=n;a[n]=h;h=0;for(l=e;h!==l;++h){p=d[h];var q=p[m];p[m]=p[n];p[n]=q}}}this.nCachedObjects_=b},uncache:function(){for(var a=this._objects,b=a.length,c=this.nCachedObjects_,d=this._indicesByUUID,e=this._bindings,f=e.length,g=0,h=arguments.length;g!==h;++g){var l=
|
|
|
arguments[g].uuid,m=d[l];if(void 0!==m)if(delete d[l],m<c){l=--c;var n=a[l],p=--b,q=a[p];d[n.uuid]=m;a[m]=n;d[q.uuid]=l;a[l]=q;a.pop();n=0;for(q=f;n!==q;++n){var t=e[n],r=t[p];t[m]=t[l];t[l]=r;t.pop()}}else for(p=--b,q=a[p],d[q.uuid]=m,a[m]=q,a.pop(),n=0,q=f;n!==q;++n)t=e[n],t[m]=t[p],t.pop()}this.nCachedObjects_=c},subscribe_:function(a,b){var c=this._bindingsIndicesByPath,d=c[a],e=this._bindings;if(void 0!==d)return e[d];var f=this._paths,g=this._parsedPaths,h=this._objects,l=this.nCachedObjects_,
|
|
|
-m=Array(h.length);d=e.length;c[a]=d;f.push(a);g.push(b);e.push(m);c=l;for(d=h.length;c!==d;++c)m[c]=new Aa(h[c],a,b);return m},unsubscribe_:function(a){var b=this._bindingsIndicesByPath,c=b[a];if(void 0!==c){var d=this._paths,e=this._parsedPaths,f=this._bindings,g=f.length-1,h=f[g];b[a[g]]=c;f[c]=h;f.pop();e[c]=e[g];e.pop();d[c]=d[g];d.pop()}}});Object.assign(ni.prototype,{play:function(){this._mixer._activateAction(this);return this},stop:function(){this._mixer._deactivateAction(this);return this.reset()},
|
|
|
+m=Array(h.length);d=e.length;c[a]=d;f.push(a);g.push(b);e.push(m);c=l;for(d=h.length;c!==d;++c)m[c]=new Aa(h[c],a,b);return m},unsubscribe_:function(a){var b=this._bindingsIndicesByPath,c=b[a];if(void 0!==c){var d=this._paths,e=this._parsedPaths,f=this._bindings,g=f.length-1,h=f[g];b[a[g]]=c;f[c]=h;f.pop();e[c]=e[g];e.pop();d[c]=d[g];d.pop()}}});Object.assign(oi.prototype,{play:function(){this._mixer._activateAction(this);return this},stop:function(){this._mixer._deactivateAction(this);return this.reset()},
|
|
|
reset:function(){this.paused=!1;this.enabled=!0;this.time=0;this._loopCount=-1;this._startTime=null;return this.stopFading().stopWarping()},isRunning:function(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)},isScheduled:function(){return this._mixer._isActiveAction(this)},startAt:function(a){this._startTime=a;return this},setLoop:function(a,b){this.loop=a;this.repetitions=b;return this},setEffectiveWeight:function(a){this.weight=a;
|
|
|
this._effectiveWeight=this.enabled?a:0;return this.stopFading()},getEffectiveWeight:function(){return this._effectiveWeight},fadeIn:function(a){return this._scheduleFading(a,0,1)},fadeOut:function(a){return this._scheduleFading(a,1,0)},crossFadeFrom:function(a,b,c){a.fadeOut(b);this.fadeIn(b);if(c){c=this._clip.duration;var d=a._clip.duration,e=c/d;a.warp(1,d/c,b);this.warp(e,1,b)}return this},crossFadeTo:function(a,b,c){return a.crossFadeFrom(this,b,c)},stopFading:function(){var a=this._weightInterpolant;
|
|
|
null!==a&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(a));return this},setEffectiveTimeScale:function(a){this.timeScale=a;this._effectiveTimeScale=this.paused?0:a;return this.stopWarping()},getEffectiveTimeScale:function(){return this._effectiveTimeScale},setDuration:function(a){this.timeScale=this._clip.duration/a;return this.stopWarping()},syncWith:function(a){this.time=a.time;this.timeScale=a.timeScale;return this.stopWarping()},halt:function(a){return this.warp(this._effectiveTimeScale,
|
|
@@ -915,24 +915,24 @@ c=this._actionsByClip;d=c[b];var e=d.knownActions,f=e[e.length-1],g=a._byClipCac
|
|
|
d=this._nActiveActions++,e=b[d];a._cacheIndex=d;b[d]=a;e._cacheIndex=c;b[c]=e},_takeBackAction:function(a){var b=this._actions,c=a._cacheIndex,d=--this._nActiveActions,e=b[d];a._cacheIndex=d;b[d]=a;e._cacheIndex=c;b[c]=e},_addInactiveBinding:function(a,b,c){var d=this._bindingsByRootAndName,e=d[b],f=this._bindings;void 0===e&&(e={},d[b]=e);e[c]=a;a._cacheIndex=f.length;f.push(a)},_removeInactiveBinding:function(a){var b=this._bindings,c=a.binding,d=c.rootNode.uuid;c=c.path;var e=this._bindingsByRootAndName,
|
|
|
f=e[d],g=b[b.length-1];a=a._cacheIndex;g._cacheIndex=a;b[a]=g;b.pop();delete f[c];0===Object.keys(f).length&&delete e[d]},_lendBinding:function(a){var b=this._bindings,c=a._cacheIndex,d=this._nActiveBindings++,e=b[d];a._cacheIndex=d;b[d]=a;e._cacheIndex=c;b[c]=e},_takeBackBinding:function(a){var b=this._bindings,c=a._cacheIndex,d=--this._nActiveBindings,e=b[d];a._cacheIndex=d;b[d]=a;e._cacheIndex=c;b[c]=e},_lendControlInterpolant:function(){var a=this._controlInterpolants,b=this._nActiveControlInterpolants++,
|
|
|
c=a[b];void 0===c&&(c=new oe(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer),c.__cacheIndex=b,a[b]=c);return c},_takeBackControlInterpolant:function(a){var b=this._controlInterpolants,c=a.__cacheIndex,d=--this._nActiveControlInterpolants,e=b[d];a.__cacheIndex=d;b[d]=a;e.__cacheIndex=c;b[c]=e},_controlInterpolantsResultBuffer:new Float32Array(1),clipAction:function(a,b){var c=b||this._root,d=c.uuid;c="string"===typeof a?Pa.findByName(c,a):a;a=null!==c?c.uuid:a;var e=
|
|
|
-this._actionsByClip[a],f=null;if(void 0!==e){f=e.actionByRoot[d];if(void 0!==f)return f;f=e.knownActions[0];null===c&&(c=f._clip)}if(null===c)return null;b=new ni(this,c,b);this._bindAction(b,f);this._addInactiveAction(b,a,d);return b},existingAction:function(a,b){var c=b||this._root;b=c.uuid;c="string"===typeof a?Pa.findByName(c,a):a;a=this._actionsByClip[c?c.uuid:a];return void 0!==a?a.actionByRoot[b]||null:null},stopAllAction:function(){for(var a=this._actions,b=this._nActiveActions,c=this._bindings,
|
|
|
+this._actionsByClip[a],f=null;if(void 0!==e){f=e.actionByRoot[d];if(void 0!==f)return f;f=e.knownActions[0];null===c&&(c=f._clip)}if(null===c)return null;b=new oi(this,c,b);this._bindAction(b,f);this._addInactiveAction(b,a,d);return b},existingAction:function(a,b){var c=b||this._root;b=c.uuid;c="string"===typeof a?Pa.findByName(c,a):a;a=this._actionsByClip[c?c.uuid:a];return void 0!==a?a.actionByRoot[b]||null:null},stopAllAction:function(){for(var a=this._actions,b=this._nActiveActions,c=this._bindings,
|
|
|
d=this._nActiveBindings,e=this._nActiveBindings=this._nActiveActions=0;e!==b;++e)a[e].reset();for(e=0;e!==d;++e)c[e].useCount=0;return this},update:function(a){a*=this.timeScale;for(var b=this._actions,c=this._nActiveActions,d=this.time+=a,e=Math.sign(a),f=this._accuIndex^=1,g=0;g!==c;++g)b[g]._update(d,a,e,f);a=this._bindings;b=this._nActiveBindings;for(g=0;g!==b;++g)a[g].apply(f);return this},setTime:function(a){for(var b=this.time=0;b<this._actions.length;b++)this._actions[b].time=0;return this.update(a)},
|
|
|
getRoot:function(){return this._root},uncacheClip:function(a){var b=this._actions;a=a.uuid;var c=this._actionsByClip,d=c[a];if(void 0!==d){d=d.knownActions;for(var e=0,f=d.length;e!==f;++e){var g=d[e];this._deactivateAction(g);var h=g._cacheIndex,l=b[b.length-1];g._cacheIndex=null;g._byClipCacheIndex=null;l._cacheIndex=h;b[h]=l;b.pop();this._removeInactiveBindingsForAction(g)}delete c[a]}},uncacheRoot:function(a){a=a.uuid;var b=this._actionsByClip;for(d in b){var c=b[d].actionByRoot[a];void 0!==c&&
|
|
|
(this._deactivateAction(c),this._removeInactiveAction(c))}var d=this._bindingsByRootAndName[a];if(void 0!==d)for(var e in d)a=d[e],a.restoreOriginalState(),this._removeInactiveBinding(a)},uncacheAction:function(a,b){a=this.existingAction(a,b);null!==a&&(this._deactivateAction(a),this._removeInactiveAction(a))}});uf.prototype.clone=function(){return new uf(void 0===this.value.clone?this.value:this.value.clone())};Og.prototype=Object.assign(Object.create(qb.prototype),{constructor:Og,isInstancedInterleavedBuffer:!0,
|
|
|
-copy:function(a){qb.prototype.copy.call(this,a);this.meshPerAttribute=a.meshPerAttribute;return this}});Object.assign(oi.prototype,{linePrecision:1,set:function(a,b){this.ray.set(a,b)},setFromCamera:function(a,b){b&&b.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(b.matrixWorld),this.ray.direction.set(a.x,a.y,.5).unproject(b).sub(this.ray.origin).normalize(),this.camera=b):b&&b.isOrthographicCamera?(this.ray.origin.set(a.x,a.y,(b.near+b.far)/(b.near-b.far)).unproject(b),this.ray.direction.set(0,
|
|
|
-0,-1).transformDirection(b.matrixWorld),this.camera=b):console.error("THREE.Raycaster: Unsupported camera type.")},intersectObject:function(a,b,c){c=c||[];Pg(a,this,c,b);c.sort(pi);return c},intersectObjects:function(a,b,c){c=c||[];if(!1===Array.isArray(a))return console.warn("THREE.Raycaster.intersectObjects: objects is not an Array."),c;for(var d=0,e=a.length;d<e;d++)Pg(a[d],this,c,b);c.sort(pi);return c}});Object.assign(qi.prototype,{set:function(a,b,c){this.radius=a;this.phi=b;this.theta=c;return this},
|
|
|
-clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.radius=a.radius;this.phi=a.phi;this.theta=a.theta;return this},makeSafe:function(){this.phi=Math.max(1E-6,Math.min(Math.PI-1E-6,this.phi));return this},setFromVector3:function(a){return this.setFromCartesianCoords(a.x,a.y,a.z)},setFromCartesianCoords:function(a,b,c){this.radius=Math.sqrt(a*a+b*b+c*c);0===this.radius?this.phi=this.theta=0:(this.theta=Math.atan2(a,c),this.phi=Math.acos(M.clamp(b/this.radius,-1,1)));return this}});
|
|
|
-Object.assign(ri.prototype,{set:function(a,b,c){this.radius=a;this.theta=b;this.y=c;return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.radius=a.radius;this.theta=a.theta;this.y=a.y;return this},setFromVector3:function(a){return this.setFromCartesianCoords(a.x,a.y,a.z)},setFromCartesianCoords:function(a,b,c){this.radius=Math.sqrt(a*a+c*c);this.theta=Math.atan2(a,c);this.y=b;return this}});var fj=new v;Object.assign(Qg.prototype,{set:function(a,b){this.min.copy(a);
|
|
|
-this.max.copy(b);return this},setFromPoints:function(a){this.makeEmpty();for(var b=0,c=a.length;b<c;b++)this.expandByPoint(a[b]);return this},setFromCenterAndSize:function(a,b){b=fj.copy(b).multiplyScalar(.5);this.min.copy(a).sub(b);this.max.copy(a).add(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.min.copy(a.min);this.max.copy(a.max);return this},makeEmpty:function(){this.min.x=this.min.y=Infinity;this.max.x=this.max.y=-Infinity;return this},isEmpty:function(){return this.max.x<
|
|
|
-this.min.x||this.max.y<this.min.y},getCenter:function(a){void 0===a&&(console.warn("THREE.Box2: .getCenter() target is now required"),a=new v);return this.isEmpty()?a.set(0,0):a.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(a){void 0===a&&(console.warn("THREE.Box2: .getSize() target is now required"),a=new v);return this.isEmpty()?a.set(0,0):a.subVectors(this.max,this.min)},expandByPoint:function(a){this.min.min(a);this.max.max(a);return this},expandByVector:function(a){this.min.sub(a);
|
|
|
-this.max.add(a);return this},expandByScalar:function(a){this.min.addScalar(-a);this.max.addScalar(a);return this},containsPoint:function(a){return a.x<this.min.x||a.x>this.max.x||a.y<this.min.y||a.y>this.max.y?!1:!0},containsBox:function(a){return this.min.x<=a.min.x&&a.max.x<=this.max.x&&this.min.y<=a.min.y&&a.max.y<=this.max.y},getParameter:function(a,b){void 0===b&&(console.warn("THREE.Box2: .getParameter() target is now required"),b=new v);return b.set((a.x-this.min.x)/(this.max.x-this.min.x),
|
|
|
-(a.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(a){return a.max.x<this.min.x||a.min.x>this.max.x||a.max.y<this.min.y||a.min.y>this.max.y?!1:!0},clampPoint:function(a,b){void 0===b&&(console.warn("THREE.Box2: .clampPoint() target is now required"),b=new v);return b.copy(a).clamp(this.min,this.max)},distanceToPoint:function(a){return fj.copy(a).clamp(this.min,this.max).sub(a).length()},intersect:function(a){this.min.max(a.min);this.max.min(a.max);return this},union:function(a){this.min.min(a.min);
|
|
|
-this.max.max(a.max);return this},translate:function(a){this.min.add(a);this.max.add(a);return this},equals:function(a){return a.min.equals(this.min)&&a.max.equals(this.max)}});var gj=new n,Vf=new n;Object.assign(Rg.prototype,{set:function(a,b){this.start.copy(a);this.end.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.start.copy(a.start);this.end.copy(a.end);return this},getCenter:function(a){void 0===a&&(console.warn("THREE.Line3: .getCenter() target is now required"),
|
|
|
-a=new n);return a.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(a){void 0===a&&(console.warn("THREE.Line3: .delta() target is now required"),a=new n);return a.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(a,b){void 0===b&&(console.warn("THREE.Line3: .at() target is now required"),b=new n);return this.delta(b).multiplyScalar(a).add(this.start)},closestPointToPointParameter:function(a,
|
|
|
-b){gj.subVectors(a,this.start);Vf.subVectors(this.end,this.start);a=Vf.dot(Vf);a=Vf.dot(gj)/a;b&&(a=M.clamp(a,0,1));return a},closestPointToPoint:function(a,b,c){a=this.closestPointToPointParameter(a,b);void 0===c&&(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),c=new n);return this.delta(c).multiplyScalar(a).add(this.start)},applyMatrix4:function(a){this.start.applyMatrix4(a);this.end.applyMatrix4(a);return this},equals:function(a){return a.start.equals(this.start)&&a.end.equals(this.end)}});
|
|
|
-se.prototype=Object.create(E.prototype);se.prototype.constructor=se;se.prototype.isImmediateRenderObject=!0;var hj=new n;id.prototype=Object.create(E.prototype);id.prototype.constructor=id;id.prototype.dispose=function(){this.cone.geometry.dispose();this.cone.material.dispose()};id.prototype.update=function(){this.light.updateMatrixWorld();var a=this.light.distance?this.light.distance:1E3,b=a*Math.tan(this.light.angle);this.cone.scale.set(b,b,a);hj.setFromMatrixPosition(this.light.target.matrixWorld);
|
|
|
-this.cone.lookAt(hj);void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)};var Pb=new n,Wf=new P,uh=new P;qc.prototype=Object.create(la.prototype);qc.prototype.constructor=qc;qc.prototype.isSkeletonHelper=!0;qc.prototype.updateMatrixWorld=function(a){var b=this.bones,c=this.geometry,d=c.getAttribute("position");uh.getInverse(this.root.matrixWorld);for(var e=0,f=0;e<b.length;e++){var g=b[e];g.parent&&g.parent.isBone&&(Wf.multiplyMatrices(uh,g.matrixWorld),
|
|
|
-Pb.setFromMatrixPosition(Wf),d.setXYZ(f,Pb.x,Pb.y,Pb.z),Wf.multiplyMatrices(uh,g.parent.matrixWorld),Pb.setFromMatrixPosition(Wf),d.setXYZ(f+1,Pb.x,Pb.y,Pb.z),f+=2)}c.getAttribute("position").needsUpdate=!0;E.prototype.updateMatrixWorld.call(this,a)};jd.prototype=Object.create(ca.prototype);jd.prototype.constructor=jd;jd.prototype.dispose=function(){this.geometry.dispose();this.material.dispose()};jd.prototype.update=function(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)};
|
|
|
+copy:function(a){qb.prototype.copy.call(this,a);this.meshPerAttribute=a.meshPerAttribute;return this}});Object.assign(Pg.prototype,{set:function(a,b){this.ray.set(a,b)},setFromCamera:function(a,b){b&&b.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(b.matrixWorld),this.ray.direction.set(a.x,a.y,.5).unproject(b).sub(this.ray.origin).normalize(),this.camera=b):b&&b.isOrthographicCamera?(this.ray.origin.set(a.x,a.y,(b.near+b.far)/(b.near-b.far)).unproject(b),this.ray.direction.set(0,0,-1).transformDirection(b.matrixWorld),
|
|
|
+this.camera=b):console.error("THREE.Raycaster: Unsupported camera type.")},intersectObject:function(a,b,c){c=c||[];Qg(a,this,c,b);c.sort(pi);return c},intersectObjects:function(a,b,c){c=c||[];if(!1===Array.isArray(a))return console.warn("THREE.Raycaster.intersectObjects: objects is not an Array."),c;for(var d=0,e=a.length;d<e;d++)Qg(a[d],this,c,b);c.sort(pi);return c}});Object.assign(qi.prototype,{set:function(a,b,c){this.radius=a;this.phi=b;this.theta=c;return this},clone:function(){return(new this.constructor).copy(this)},
|
|
|
+copy:function(a){this.radius=a.radius;this.phi=a.phi;this.theta=a.theta;return this},makeSafe:function(){this.phi=Math.max(1E-6,Math.min(Math.PI-1E-6,this.phi));return this},setFromVector3:function(a){return this.setFromCartesianCoords(a.x,a.y,a.z)},setFromCartesianCoords:function(a,b,c){this.radius=Math.sqrt(a*a+b*b+c*c);0===this.radius?this.phi=this.theta=0:(this.theta=Math.atan2(a,c),this.phi=Math.acos(M.clamp(b/this.radius,-1,1)));return this}});Object.assign(ri.prototype,{set:function(a,b,c){this.radius=
|
|
|
+a;this.theta=b;this.y=c;return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.radius=a.radius;this.theta=a.theta;this.y=a.y;return this},setFromVector3:function(a){return this.setFromCartesianCoords(a.x,a.y,a.z)},setFromCartesianCoords:function(a,b,c){this.radius=Math.sqrt(a*a+c*c);this.theta=Math.atan2(a,c);this.y=b;return this}});var fj=new v;Object.assign(Rg.prototype,{set:function(a,b){this.min.copy(a);this.max.copy(b);return this},setFromPoints:function(a){this.makeEmpty();
|
|
|
+for(var b=0,c=a.length;b<c;b++)this.expandByPoint(a[b]);return this},setFromCenterAndSize:function(a,b){b=fj.copy(b).multiplyScalar(.5);this.min.copy(a).sub(b);this.max.copy(a).add(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.min.copy(a.min);this.max.copy(a.max);return this},makeEmpty:function(){this.min.x=this.min.y=Infinity;this.max.x=this.max.y=-Infinity;return this},isEmpty:function(){return this.max.x<this.min.x||this.max.y<this.min.y},getCenter:function(a){void 0===
|
|
|
+a&&(console.warn("THREE.Box2: .getCenter() target is now required"),a=new v);return this.isEmpty()?a.set(0,0):a.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(a){void 0===a&&(console.warn("THREE.Box2: .getSize() target is now required"),a=new v);return this.isEmpty()?a.set(0,0):a.subVectors(this.max,this.min)},expandByPoint:function(a){this.min.min(a);this.max.max(a);return this},expandByVector:function(a){this.min.sub(a);this.max.add(a);return this},expandByScalar:function(a){this.min.addScalar(-a);
|
|
|
+this.max.addScalar(a);return this},containsPoint:function(a){return a.x<this.min.x||a.x>this.max.x||a.y<this.min.y||a.y>this.max.y?!1:!0},containsBox:function(a){return this.min.x<=a.min.x&&a.max.x<=this.max.x&&this.min.y<=a.min.y&&a.max.y<=this.max.y},getParameter:function(a,b){void 0===b&&(console.warn("THREE.Box2: .getParameter() target is now required"),b=new v);return b.set((a.x-this.min.x)/(this.max.x-this.min.x),(a.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(a){return a.max.x<
|
|
|
+this.min.x||a.min.x>this.max.x||a.max.y<this.min.y||a.min.y>this.max.y?!1:!0},clampPoint:function(a,b){void 0===b&&(console.warn("THREE.Box2: .clampPoint() target is now required"),b=new v);return b.copy(a).clamp(this.min,this.max)},distanceToPoint:function(a){return fj.copy(a).clamp(this.min,this.max).sub(a).length()},intersect:function(a){this.min.max(a.min);this.max.min(a.max);return this},union:function(a){this.min.min(a.min);this.max.max(a.max);return this},translate:function(a){this.min.add(a);
|
|
|
+this.max.add(a);return this},equals:function(a){return a.min.equals(this.min)&&a.max.equals(this.max)}});var gj=new n,Vf=new n;Object.assign(Sg.prototype,{set:function(a,b){this.start.copy(a);this.end.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.start.copy(a.start);this.end.copy(a.end);return this},getCenter:function(a){void 0===a&&(console.warn("THREE.Line3: .getCenter() target is now required"),a=new n);return a.addVectors(this.start,this.end).multiplyScalar(.5)},
|
|
|
+delta:function(a){void 0===a&&(console.warn("THREE.Line3: .delta() target is now required"),a=new n);return a.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(a,b){void 0===b&&(console.warn("THREE.Line3: .at() target is now required"),b=new n);return this.delta(b).multiplyScalar(a).add(this.start)},closestPointToPointParameter:function(a,b){gj.subVectors(a,this.start);Vf.subVectors(this.end,
|
|
|
+this.start);a=Vf.dot(Vf);a=Vf.dot(gj)/a;b&&(a=M.clamp(a,0,1));return a},closestPointToPoint:function(a,b,c){a=this.closestPointToPointParameter(a,b);void 0===c&&(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),c=new n);return this.delta(c).multiplyScalar(a).add(this.start)},applyMatrix4:function(a){this.start.applyMatrix4(a);this.end.applyMatrix4(a);return this},equals:function(a){return a.start.equals(this.start)&&a.end.equals(this.end)}});se.prototype=Object.create(E.prototype);
|
|
|
+se.prototype.constructor=se;se.prototype.isImmediateRenderObject=!0;var hj=new n;id.prototype=Object.create(E.prototype);id.prototype.constructor=id;id.prototype.dispose=function(){this.cone.geometry.dispose();this.cone.material.dispose()};id.prototype.update=function(){this.light.updateMatrixWorld();var a=this.light.distance?this.light.distance:1E3,b=a*Math.tan(this.light.angle);this.cone.scale.set(b,b,a);hj.setFromMatrixPosition(this.light.target.matrixWorld);this.cone.lookAt(hj);void 0!==this.color?
|
|
|
+this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)};var Pb=new n,Wf=new P,vh=new P;qc.prototype=Object.create(la.prototype);qc.prototype.constructor=qc;qc.prototype.isSkeletonHelper=!0;qc.prototype.updateMatrixWorld=function(a){var b=this.bones,c=this.geometry,d=c.getAttribute("position");vh.getInverse(this.root.matrixWorld);for(var e=0,f=0;e<b.length;e++){var g=b[e];g.parent&&g.parent.isBone&&(Wf.multiplyMatrices(vh,g.matrixWorld),Pb.setFromMatrixPosition(Wf),
|
|
|
+d.setXYZ(f,Pb.x,Pb.y,Pb.z),Wf.multiplyMatrices(vh,g.parent.matrixWorld),Pb.setFromMatrixPosition(Wf),d.setXYZ(f+1,Pb.x,Pb.y,Pb.z),f+=2)}c.getAttribute("position").needsUpdate=!0;E.prototype.updateMatrixWorld.call(this,a)};jd.prototype=Object.create(ca.prototype);jd.prototype.constructor=jd;jd.prototype.dispose=function(){this.geometry.dispose();this.material.dispose()};jd.prototype.update=function(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)};
|
|
|
var ml=new n,ij=new C,jj=new C;kd.prototype=Object.create(E.prototype);kd.prototype.constructor=kd;kd.prototype.dispose=function(){this.children[0].geometry.dispose();this.children[0].material.dispose()};kd.prototype.update=function(){var a=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{var b=a.geometry.getAttribute("color");ij.copy(this.light.color);jj.copy(this.light.groundColor);for(var c=0,d=b.count;c<d;c++){var e=c<d/2?ij:jj;b.setXYZ(c,e.r,e.g,e.b)}b.needsUpdate=
|
|
|
!0}a.lookAt(ml.setFromMatrixPosition(this.light.matrixWorld).negate())};vf.prototype=Object.assign(Object.create(la.prototype),{constructor:vf,copy:function(a){la.prototype.copy.call(this,a);this.geometry.copy(a.geometry);this.material.copy(a.material);return this},clone:function(){return(new this.constructor).copy(this)}});wf.prototype=Object.create(la.prototype);wf.prototype.constructor=wf;var kj=new n,Xf=new n,lj=new n;ld.prototype=Object.create(E.prototype);ld.prototype.constructor=ld;ld.prototype.dispose=
|
|
|
function(){this.lightPlane.geometry.dispose();this.lightPlane.material.dispose();this.targetLine.geometry.dispose();this.targetLine.material.dispose()};ld.prototype.update=function(){kj.setFromMatrixPosition(this.light.matrixWorld);Xf.setFromMatrixPosition(this.light.target.matrixWorld);lj.subVectors(Xf,kj);this.lightPlane.lookAt(Xf);void 0!==this.color?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),
|
|
@@ -940,23 +940,23 @@ this.targetLine.material.color.copy(this.light.color));this.targetLine.lookAt(Xf
|
|
|
ma("f2",b,a,S,1,-1,1);ma("f3",b,a,S,-1,1,1);ma("f4",b,a,S,1,1,1);ma("u1",b,a,S,.7,1.1,-1);ma("u2",b,a,S,-.7,1.1,-1);ma("u3",b,a,S,0,2,-1);ma("cf1",b,a,S,-1,0,1);ma("cf2",b,a,S,1,0,1);ma("cf3",b,a,S,0,-1,1);ma("cf4",b,a,S,0,1,1);ma("cn1",b,a,S,-1,0,-1);ma("cn2",b,a,S,1,0,-1);ma("cn3",b,a,S,0,-1,-1);ma("cn4",b,a,S,0,1,-1);a.getAttribute("position").needsUpdate=!0};var Yf=new Ra;vb.prototype=Object.create(la.prototype);vb.prototype.constructor=vb;vb.prototype.update=function(a){void 0!==a&&console.warn("THREE.BoxHelper: .update() has no longer arguments.");
|
|
|
void 0!==this.object&&Yf.setFromObject(this.object);if(!Yf.isEmpty()){a=Yf.min;var b=Yf.max,c=this.geometry.attributes.position,d=c.array;d[0]=b.x;d[1]=b.y;d[2]=b.z;d[3]=a.x;d[4]=b.y;d[5]=b.z;d[6]=a.x;d[7]=a.y;d[8]=b.z;d[9]=b.x;d[10]=a.y;d[11]=b.z;d[12]=b.x;d[13]=b.y;d[14]=a.z;d[15]=a.x;d[16]=b.y;d[17]=a.z;d[18]=a.x;d[19]=a.y;d[20]=a.z;d[21]=b.x;d[22]=a.y;d[23]=a.z;c.needsUpdate=!0;this.geometry.computeBoundingSphere()}};vb.prototype.setFromObject=function(a){this.object=a;this.update();return this};
|
|
|
vb.prototype.copy=function(a){la.prototype.copy.call(this,a);this.object=a.object;return this};vb.prototype.clone=function(){return(new this.constructor).copy(this)};ue.prototype=Object.create(la.prototype);ue.prototype.constructor=ue;ue.prototype.updateMatrixWorld=function(a){var b=this.box;b.isEmpty()||(b.getCenter(this.position),b.getSize(this.scale),this.scale.multiplyScalar(.5),E.prototype.updateMatrixWorld.call(this,a))};ve.prototype=Object.create(Ja.prototype);ve.prototype.constructor=ve;ve.prototype.updateMatrixWorld=
|
|
|
-function(a){var b=-this.plane.constant;1E-8>Math.abs(b)&&(b=1E-8);this.scale.set(.5*this.size,.5*this.size,b);this.children[0].material.side=0>b?1:0;this.lookAt(this.plane.normal);E.prototype.updateMatrixWorld.call(this,a)};var mj=new n,yf,Sg;wb.prototype=Object.create(E.prototype);wb.prototype.constructor=wb;wb.prototype.setDirection=function(a){.99999<a.y?this.quaternion.set(0,0,0,1):-.99999>a.y?this.quaternion.set(1,0,0,0):(mj.set(a.z,0,-a.x).normalize(),this.quaternion.setFromAxisAngle(mj,Math.acos(a.y)))};
|
|
|
+function(a){var b=-this.plane.constant;1E-8>Math.abs(b)&&(b=1E-8);this.scale.set(.5*this.size,.5*this.size,b);this.children[0].material.side=0>b?1:0;this.lookAt(this.plane.normal);E.prototype.updateMatrixWorld.call(this,a)};var mj=new n,yf,Tg;wb.prototype=Object.create(E.prototype);wb.prototype.constructor=wb;wb.prototype.setDirection=function(a){.99999<a.y?this.quaternion.set(0,0,0,1):-.99999>a.y?this.quaternion.set(1,0,0,0):(mj.set(a.z,0,-a.x).normalize(),this.quaternion.setFromAxisAngle(mj,Math.acos(a.y)))};
|
|
|
wb.prototype.setLength=function(a,b,c){void 0===b&&(b=.2*a);void 0===c&&(c=.2*b);this.line.scale.set(1,Math.max(1E-4,a-b),1);this.line.updateMatrix();this.cone.scale.set(c,b,c);this.cone.position.y=a;this.cone.updateMatrix()};wb.prototype.setColor=function(a){this.line.material.color.set(a);this.cone.material.color.set(a)};wb.prototype.copy=function(a){E.prototype.copy.call(this,a,!1);this.line.copy(a.line);this.cone.copy(a.cone);return this};wb.prototype.clone=function(){return(new this.constructor).copy(this)};
|
|
|
-we.prototype=Object.create(la.prototype);we.prototype.constructor=we;var jb=Math.pow(2,8),nj=[.125,.215,.35,.446,.526,.582],xi=5+nj.length,kb={3E3:0,3001:1,3002:2,3004:3,3005:4,3006:5,3007:6},Wg=new gd,zf=function(a){var b=new Float32Array(a),c=new n(0,1,0);a=new tb({defines:{n:a},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:b},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:c},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Yg(),
|
|
|
-fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform int samples;\nuniform float weights[n];\nuniform bool latitudinal;\nuniform float dTheta;\nuniform float mipInt;\nuniform vec3 poleAxis;\n\n"+Zg()+"\n\n#define ENVMAP_TYPE_CUBE_UV\n#include <cube_uv_reflection_fragment>\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tfor (int i = 0; i < n; i++) {\n\t\tif (i >= samples)\n\t\t\tbreak;\n\t\tfor (int dir = -1; dir < 2; dir += 2) {\n\t\t\tif (i == 0 && dir == 1)\n\t\t\t\tcontinue;\n\t\t\tvec3 axis = latitudinal ? poleAxis : cross(poleAxis, vOutputDirection);\n\t\t\tif (all(equal(axis, vec3(0.0))))\n\t\t\t\taxis = cross(vec3(0.0, 1.0, 0.0), vOutputDirection);\n\t\t\taxis = normalize(axis);\n\t\t\tfloat theta = dTheta * float(dir * i);\n\t\t\tfloat cosTheta = cos(theta);\n\t\t\t// Rodrigues' axis-angle rotation\n\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross(axis, vOutputDirection) * sin(theta)\n\t\t\t\t\t+ axis * dot(axis, vOutputDirection) * (1.0 - cosTheta);\n\t\t\tgl_FragColor.rgb +=\n\t\t\t\t\tweights[i] * bilinearCubeUV(envMap, sampleDirection, mipInt);\n\t\t}\n\t}\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
-blending:0,depthTest:!1,depthWrite:!1});a.type="SphericalGaussianBlur";return a}(20),Qb=null,Rb=null,vh=function(){for(var a=[],b=[],c=[],d=8,e=0;e<xi;e++){var f=Math.pow(2,d);b.push(f);var g=1/f;4<e?g=nj[e-8+4-1]:0==e&&(g=0);c.push(g);g=1/(f-1);f=-g/2;g=1+g/2;var h=[f,f,g,f,g,g,f,f,g,g,f,g];f=new Float32Array(108);g=new Float32Array(72);for(var l=new Float32Array(36),m=0;6>m;m++){var n=m%3*2/3-1,p=2<m?0:-1;f.set([n,p,0,n+2/3,p,0,n+2/3,p+1,0,n,p,0,n+2/3,p+1,0,n,p+1,0],18*m);g.set(h,12*m);l.set([m,
|
|
|
-m,m,m,m,m],6*m)}h=new A;h.setAttribute("position",new L(f,3));h.setAttribute("uv",new L(g,2));h.setAttribute("faceIndex",new L(l,1));a.push(h);4<d&&d--}return{_lodPlanes:a,_sizeLods:b,_sigmas:c}}(),xe=vh._lodPlanes,Bi=vh._sizeLods,Bf=vh._sigmas,Af=null,Y=null,Vg=null,zc=(1+Math.sqrt(5))/2,zd=1/zc,zi=[new n(1,1,1),new n(-1,1,1),new n(1,1,-1),new n(-1,1,-1),new n(0,zc,zd),new n(0,zc,-zd),new n(zd,0,zc),new n(-zd,0,zc),new n(zc,zd,0),new n(-zc,zd,0)];Tg.prototype={constructor:Tg,fromScene:function(a,
|
|
|
-b,c,d){void 0===b&&(b=0);void 0===c&&(c=.1);void 0===d&&(d=100);Vg=Y.getRenderTarget();var e=ti();c=new ea(90,1,c,d);d=[1,1,1,1,-1,1];var f=[1,1,-1,-1,-1,1],g=Y.outputEncoding,h=Y.toneMapping,l=Y.toneMappingExposure,m=Y.getClearColor(),n=Y.getClearAlpha();Y.toneMapping=1;Y.toneMappingExposure=1;Y.outputEncoding=3E3;a.scale.z*=-1;var p=a.background;if(p&&p.isColor){p.convertSRGBToLinear();var q=Math.min(Math.max(Math.ceil(Math.log2(Math.max(p.r,p.g,p.b))),-128),127);p=p.multiplyScalar(Math.pow(2,-q));
|
|
|
-Y.setClearColor(p,(q+128)/255);a.background=null}for(p=0;6>p;p++)q=p%3,0==q?(c.up.set(0,d[p],0),c.lookAt(f[p],0,0)):1==q?(c.up.set(0,0,d[p]),c.lookAt(0,f[p],0)):(c.up.set(0,d[p],0),c.lookAt(0,0,f[p])),Xg(e,q*jb,2<p?jb:0,jb,jb),Y.setRenderTarget(e),Y.render(a,c);Y.toneMapping=h;Y.toneMappingExposure=l;Y.outputEncoding=g;Y.setClearColor(m,n);a.scale.z*=-1;0<b&&yi(e,0,0,b);wi(e);vi(e);return e},fromEquirectangular:function(a){a.magFilter=1003;a.minFilter=1003;a.generateMipmaps=!1;return this.fromCubemap(a)},
|
|
|
-fromCubemap:function(a){Vg=Y.getRenderTarget();var b=ti(a),c=new nb;a.isCubeTexture?null==Rb&&(Rb=Di()):null==Qb&&(Qb=Ci());var d=a.isCubeTexture?Rb:Qb;c.add(new ca(xe[0],d));d=d.uniforms;d.envMap.value=a;a.isCubeTexture||d.texelSize.value.set(1/a.image.width,1/a.image.height);d.inputEncoding.value=kb[a.encoding];d.outputEncoding.value=kb[a.encoding];Xg(b,0,0,3*jb,2*jb);Y.setRenderTarget(b);Y.render(c,Wg);wi(b);vi(b);return b},compileCubemapShader:function(){null==Rb&&(Rb=Di(),Ug(Rb))},compileEquirectangularShader:function(){null==
|
|
|
-Qb&&(Qb=Ci(),Ug(Qb))},dispose:function(){zf.dispose();null!=Rb&&Rb.dispose();null!=Qb&&Qb.dispose();for(var a=0;a<xe.length;a++)xe[a].dispose()}};I.create=function(a,b){console.log("THREE.Curve.create() has been deprecated");a.prototype=Object.create(I.prototype);a.prototype.constructor=a;a.prototype.getPoint=b;return a};Object.assign(ub.prototype,{createPointsGeometry:function(a){console.warn("THREE.CurvePath: .createPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");
|
|
|
+we.prototype=Object.create(la.prototype);we.prototype.constructor=we;var jb=Math.pow(2,8),nj=[.125,.215,.35,.446,.526,.582],xi=5+nj.length,kb={3E3:0,3001:1,3002:2,3004:3,3005:4,3006:5,3007:6},Xg=new gd,zf=function(a){var b=new Float32Array(a),c=new n(0,1,0);a=new tb({defines:{n:a},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:b},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:c},inputEncoding:{value:kb[3E3]},outputEncoding:{value:kb[3E3]}},vertexShader:Zg(),
|
|
|
+fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform int samples;\nuniform float weights[n];\nuniform bool latitudinal;\nuniform float dTheta;\nuniform float mipInt;\nuniform vec3 poleAxis;\n\n"+$g()+"\n\n#define ENVMAP_TYPE_CUBE_UV\n#include <cube_uv_reflection_fragment>\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tfor (int i = 0; i < n; i++) {\n\t\tif (i >= samples)\n\t\t\tbreak;\n\t\tfor (int dir = -1; dir < 2; dir += 2) {\n\t\t\tif (i == 0 && dir == 1)\n\t\t\t\tcontinue;\n\t\t\tvec3 axis = latitudinal ? poleAxis : cross(poleAxis, vOutputDirection);\n\t\t\tif (all(equal(axis, vec3(0.0))))\n\t\t\t\taxis = cross(vec3(0.0, 1.0, 0.0), vOutputDirection);\n\t\t\taxis = normalize(axis);\n\t\t\tfloat theta = dTheta * float(dir * i);\n\t\t\tfloat cosTheta = cos(theta);\n\t\t\t// Rodrigues' axis-angle rotation\n\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross(axis, vOutputDirection) * sin(theta)\n\t\t\t\t\t+ axis * dot(axis, vOutputDirection) * (1.0 - cosTheta);\n\t\t\tgl_FragColor.rgb +=\n\t\t\t\t\tweights[i] * bilinearCubeUV(envMap, sampleDirection, mipInt);\n\t\t}\n\t}\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t",
|
|
|
+blending:0,depthTest:!1,depthWrite:!1});a.type="SphericalGaussianBlur";return a}(20),Qb=null,Rb=null,wh=function(){for(var a=[],b=[],c=[],d=8,e=0;e<xi;e++){var f=Math.pow(2,d);b.push(f);var g=1/f;4<e?g=nj[e-8+4-1]:0==e&&(g=0);c.push(g);g=1/(f-1);f=-g/2;g=1+g/2;var h=[f,f,g,f,g,g,f,f,g,g,f,g];f=new Float32Array(108);g=new Float32Array(72);for(var l=new Float32Array(36),m=0;6>m;m++){var n=m%3*2/3-1,p=2<m?0:-1;f.set([n,p,0,n+2/3,p,0,n+2/3,p+1,0,n,p,0,n+2/3,p+1,0,n,p+1,0],18*m);g.set(h,12*m);l.set([m,
|
|
|
+m,m,m,m,m],6*m)}h=new A;h.setAttribute("position",new L(f,3));h.setAttribute("uv",new L(g,2));h.setAttribute("faceIndex",new L(l,1));a.push(h);4<d&&d--}return{_lodPlanes:a,_sizeLods:b,_sigmas:c}}(),xe=wh._lodPlanes,Bi=wh._sizeLods,Bf=wh._sigmas,Af=null,Y=null,Wg=null,zc=(1+Math.sqrt(5))/2,zd=1/zc,zi=[new n(1,1,1),new n(-1,1,1),new n(1,1,-1),new n(-1,1,-1),new n(0,zc,zd),new n(0,zc,-zd),new n(zd,0,zc),new n(-zd,0,zc),new n(zc,zd,0),new n(-zc,zd,0)];Ug.prototype={constructor:Ug,fromScene:function(a,
|
|
|
+b,c,d){void 0===b&&(b=0);void 0===c&&(c=.1);void 0===d&&(d=100);Wg=Y.getRenderTarget();var e=ti();c=new ea(90,1,c,d);d=[1,1,1,1,-1,1];var f=[1,1,-1,-1,-1,1],g=Y.outputEncoding,h=Y.toneMapping,l=Y.toneMappingExposure,m=Y.getClearColor(),n=Y.getClearAlpha();Y.toneMapping=1;Y.toneMappingExposure=1;Y.outputEncoding=3E3;a.scale.z*=-1;var p=a.background;if(p&&p.isColor){p.convertSRGBToLinear();var q=Math.min(Math.max(Math.ceil(Math.log2(Math.max(p.r,p.g,p.b))),-128),127);p=p.multiplyScalar(Math.pow(2,-q));
|
|
|
+Y.setClearColor(p,(q+128)/255);a.background=null}for(p=0;6>p;p++)q=p%3,0==q?(c.up.set(0,d[p],0),c.lookAt(f[p],0,0)):1==q?(c.up.set(0,0,d[p]),c.lookAt(0,f[p],0)):(c.up.set(0,d[p],0),c.lookAt(0,0,f[p])),Yg(e,q*jb,2<p?jb:0,jb,jb),Y.setRenderTarget(e),Y.render(a,c);Y.toneMapping=h;Y.toneMappingExposure=l;Y.outputEncoding=g;Y.setClearColor(m,n);a.scale.z*=-1;0<b&&yi(e,0,0,b);wi(e);vi(e);return e},fromEquirectangular:function(a){a.magFilter=1003;a.minFilter=1003;a.generateMipmaps=!1;return this.fromCubemap(a)},
|
|
|
+fromCubemap:function(a){Wg=Y.getRenderTarget();var b=ti(a),c=new nb;a.isCubeTexture?null==Rb&&(Rb=Di()):null==Qb&&(Qb=Ci());var d=a.isCubeTexture?Rb:Qb;c.add(new ca(xe[0],d));d=d.uniforms;d.envMap.value=a;a.isCubeTexture||d.texelSize.value.set(1/a.image.width,1/a.image.height);d.inputEncoding.value=kb[a.encoding];d.outputEncoding.value=kb[a.encoding];Yg(b,0,0,3*jb,2*jb);Y.setRenderTarget(b);Y.render(c,Xg);wi(b);vi(b);return b},compileCubemapShader:function(){null==Rb&&(Rb=Di(),Vg(Rb))},compileEquirectangularShader:function(){null==
|
|
|
+Qb&&(Qb=Ci(),Vg(Qb))},dispose:function(){zf.dispose();null!=Rb&&Rb.dispose();null!=Qb&&Qb.dispose();for(var a=0;a<xe.length;a++)xe[a].dispose()}};I.create=function(a,b){console.log("THREE.Curve.create() has been deprecated");a.prototype=Object.create(I.prototype);a.prototype.constructor=a;a.prototype.getPoint=b;return a};Object.assign(ub.prototype,{createPointsGeometry:function(a){console.warn("THREE.CurvePath: .createPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");
|
|
|
a=this.getPoints(a);return this.createGeometry(a)},createSpacedPointsGeometry:function(a){console.warn("THREE.CurvePath: .createSpacedPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");a=this.getSpacedPoints(a);return this.createGeometry(a)},createGeometry:function(a){console.warn("THREE.CurvePath: .createGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");for(var b=new N,c=0,d=a.length;c<d;c++){var e=a[c];b.vertices.push(new n(e.x,
|
|
|
-e.y,e.z||0))}return b}});Object.assign(Za.prototype,{fromPoints:function(a){console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints().");return this.setFromPoints(a)}});Ei.prototype=Object.create(za.prototype);Fi.prototype=Object.create(za.prototype);$g.prototype=Object.create(za.prototype);Object.assign($g.prototype,{initFromArray:function(){console.error("THREE.Spline: .initFromArray() has been removed.")},getControlPointsArray:function(){console.error("THREE.Spline: .getControlPointsArray() has been removed.")},
|
|
|
+e.y,e.z||0))}return b}});Object.assign(Za.prototype,{fromPoints:function(a){console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints().");return this.setFromPoints(a)}});Ei.prototype=Object.create(za.prototype);Fi.prototype=Object.create(za.prototype);ah.prototype=Object.create(za.prototype);Object.assign(ah.prototype,{initFromArray:function(){console.error("THREE.Spline: .initFromArray() has been removed.")},getControlPointsArray:function(){console.error("THREE.Spline: .getControlPointsArray() has been removed.")},
|
|
|
reparametrizeByArcLength:function(){console.error("THREE.Spline: .reparametrizeByArcLength() has been removed.")}});vf.prototype.setColors=function(){console.error("THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.")};qc.prototype.update=function(){console.error("THREE.SkeletonHelper: update() no longer needs to be called.")};Object.assign(V.prototype,{extractUrlBase:function(a){console.warn("THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead.");
|
|
|
-return sh.extractUrlBase(a)}});V.Handlers={add:function(){console.error("THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.")},get:function(){console.error("THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.")}};Object.assign(rf.prototype,{setTexturePath:function(a){console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath().");return this.setResourcePath(a)}});Object.assign(Qg.prototype,{center:function(a){console.warn("THREE.Box2: .center() has been renamed to .getCenter().");
|
|
|
+return th.extractUrlBase(a)}});V.Handlers={add:function(){console.error("THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.")},get:function(){console.error("THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.")}};Object.assign(rf.prototype,{setTexturePath:function(a){console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath().");return this.setResourcePath(a)}});Object.assign(Rg.prototype,{center:function(a){console.warn("THREE.Box2: .center() has been renamed to .getCenter().");
|
|
|
return this.getCenter(a)},empty:function(){console.warn("THREE.Box2: .empty() has been renamed to .isEmpty().");return this.isEmpty()},isIntersectionBox:function(a){console.warn("THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox().");return this.intersectsBox(a)},size:function(a){console.warn("THREE.Box2: .size() has been renamed to .getSize().");return this.getSize(a)}});Object.assign(Ra.prototype,{center:function(a){console.warn("THREE.Box3: .center() has been renamed to .getCenter().");
|
|
|
return this.getCenter(a)},empty:function(){console.warn("THREE.Box3: .empty() has been renamed to .isEmpty().");return this.isEmpty()},isIntersectionBox:function(a){console.warn("THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox().");return this.intersectsBox(a)},isIntersectionSphere:function(a){console.warn("THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere().");return this.intersectsSphere(a)},size:function(a){console.warn("THREE.Box3: .size() has been renamed to .getSize().");
|
|
|
-return this.getSize(a)}});Gc.prototype.setFromMatrix=function(a){console.warn("THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix().");return this.setFromProjectionMatrix(a)};Rg.prototype.center=function(a){console.warn("THREE.Line3: .center() has been renamed to .getCenter().");return this.getCenter(a)};Object.assign(M,{random16:function(){console.warn("THREE.Math: .random16() has been deprecated. Use Math.random() instead.");return Math.random()},nearestPowerOfTwo:function(a){console.warn("THREE.Math: .nearestPowerOfTwo() has been renamed to .floorPowerOfTwo().");
|
|
|
+return this.getSize(a)}});Gc.prototype.setFromMatrix=function(a){console.warn("THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix().");return this.setFromProjectionMatrix(a)};Sg.prototype.center=function(a){console.warn("THREE.Line3: .center() has been renamed to .getCenter().");return this.getCenter(a)};Object.assign(M,{random16:function(){console.warn("THREE.Math: .random16() has been deprecated. Use Math.random() instead.");return Math.random()},nearestPowerOfTwo:function(a){console.warn("THREE.Math: .nearestPowerOfTwo() has been renamed to .floorPowerOfTwo().");
|
|
|
return M.floorPowerOfTwo(a)},nextPowerOfTwo:function(a){console.warn("THREE.Math: .nextPowerOfTwo() has been renamed to .ceilPowerOfTwo().");return M.ceilPowerOfTwo(a)}});Object.assign(ya.prototype,{flattenToArrayOffset:function(a,b){console.warn("THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.");return this.toArray(a,b)},multiplyVector3:function(a){console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead.");return a.applyMatrix3(this)},
|
|
|
multiplyVector3Array:function(){console.error("THREE.Matrix3: .multiplyVector3Array() has been removed.")},applyToBufferAttribute:function(a){console.warn("THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead.");return a.applyMatrix3(this)},applyToVector3Array:function(){console.error("THREE.Matrix3: .applyToVector3Array() has been removed.")}});Object.assign(P.prototype,{extractPosition:function(a){console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition().");
|
|
|
return this.copyPosition(a)},flattenToArrayOffset:function(a,b){console.warn("THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.");return this.toArray(a,b)},getPosition:function(){console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead.");return(new n).setFromMatrixColumn(this,3)},setRotationFromQuaternion:function(a){console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion().");
|
|
@@ -985,22 +985,23 @@ return this.array.length}},dynamic:{get:function(){console.warn("THREE.BufferAtt
|
|
|
setArray:function(){console.error("THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")}});Object.assign(A.prototype,{addIndex:function(a){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex().");this.setIndex(a)},addAttribute:function(a,b,c){console.warn("THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute().");return b&&b.isBufferAttribute||b&&b.isInterleavedBufferAttribute?"index"===
|
|
|
a?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(b),this):this.setAttribute(a,b):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.setAttribute(a,new L(b,c)))},addDrawCall:function(a,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.")},removeAttribute:function(a){console.warn("THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute().");return this.deleteAttribute(a)},applyMatrix:function(a){console.warn("THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4().");return this.applyMatrix4(a)}});
|
|
|
-Object.defineProperties(A.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(qb.prototype,{dynamic:{get:function(){console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead.");return 35048===this.usage},set:function(a){console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead.");
|
|
|
-this.setUsage(a)}}});Object.assign(qb.prototype,{setDynamic:function(a){console.warn("THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead.");this.setUsage(!0===a?35048:35044);return this},setArray:function(){console.error("THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")}});Object.assign(eb.prototype,{getArrays:function(){console.error("THREE.ExtrudeBufferGeometry: .getArrays() has been removed.")},
|
|
|
-addShapeList:function(){console.error("THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.")},addShape:function(){console.error("THREE.ExtrudeBufferGeometry: .addShape() has been removed.")}});Object.defineProperties(uf.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(K.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},overdraw:{get:function(){console.warn("THREE.Material: .overdraw has been removed.")},set:function(){console.warn("THREE.Material: .overdraw 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=1===a}},stencilMask:{get:function(){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead.");return this.stencilFuncMask},set:function(a){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead.");this.stencilFuncMask=
|
|
|
-a}}});Object.defineProperties(Ib.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(pa.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(pg.prototype,{clearTarget:function(a,b,c,d){console.warn("THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead.");this.setRenderTarget(a);this.clear(b,c,d)},animate:function(a){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop().");this.setAnimationLoop(a)},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},resetGLState:function(){console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset().");return this.state.reset()},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.");
|
|
|
+Object.defineProperties(A.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(Pg.prototype,{linePrecision:{get:function(){console.warn("THREE.Raycaster: .linePrecision has been deprecated. Use .params.Line.threshold instead.");return this.params.Line.threshold},set:function(a){console.warn("THREE.Raycaster: .linePrecision has been deprecated. Use .params.Line.threshold instead.");
|
|
|
+this.params.Line.threshold=a}}});Object.defineProperties(qb.prototype,{dynamic:{get:function(){console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead.");return 35048===this.usage},set:function(a){console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead.");this.setUsage(a)}}});Object.assign(qb.prototype,{setDynamic:function(a){console.warn("THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead.");this.setUsage(!0===
|
|
|
+a?35048:35044);return this},setArray:function(){console.error("THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")}});Object.assign(eb.prototype,{getArrays:function(){console.error("THREE.ExtrudeBufferGeometry: .getArrays() has been removed.")},addShapeList:function(){console.error("THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.")},addShape:function(){console.error("THREE.ExtrudeBufferGeometry: .addShape() has been removed.")}});
|
|
|
+Object.defineProperties(uf.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(K.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},
|
|
|
+overdraw:{get:function(){console.warn("THREE.Material: .overdraw has been removed.")},set:function(){console.warn("THREE.Material: .overdraw 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=1===a}},stencilMask:{get:function(){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead.");return this.stencilFuncMask},set:function(a){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead.");this.stencilFuncMask=a}}});Object.defineProperties(Ib.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(pa.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(pg.prototype,{clearTarget:function(a,b,c,d){console.warn("THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead.");
|
|
|
+this.setRenderTarget(a);this.clear(b,c,d)},animate:function(a){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop().");this.setAnimationLoop(a)},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},resetGLState:function(){console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset().");return this.state.reset()},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.")},setFaceCulling:function(){console.warn("THREE.WebGLRenderer: .setFaceCulling() has been removed.")},allocTextureUnit:function(){console.warn("THREE.WebGLRenderer: .allocTextureUnit() has been removed.")},setTexture:function(){console.warn("THREE.WebGLRenderer: .setTexture() has been removed.")},setTexture2D:function(){console.warn("THREE.WebGLRenderer: .setTexture2D() has been removed.")},
|
|
|
setTextureCube:function(){console.warn("THREE.WebGLRenderer: .setTextureCube() has been removed.")},getActiveMipMapLevel:function(){console.warn("THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel().");return this.getActiveMipmapLevel()}});Object.defineProperties(pg.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(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")}},context:{get:function(){console.warn("THREE.WebGLRenderer: .context has been removed. Use .getContext() instead.");return this.getContext()}},
|
|
|
vr:{get:function(){console.warn("THREE.WebGLRenderer: .vr has been renamed to .xr");return this.xr}},gammaInput:{get:function(){console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.");return!1},set:function(){console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.")}},gammaOutput:{get:function(){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.");
|
|
|
-return!1},set:function(a){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.");this.outputEncoding=!0===a?3001:3E3}}});Object.defineProperties(Vh.prototype,{cullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")}},renderReverseSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")},
|
|
|
+return!1},set:function(a){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.");this.outputEncoding=!0===a?3001:3E3}}});Object.defineProperties(Wh.prototype,{cullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")}},renderReverseSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")},
|
|
|
set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")}},renderSingleSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")}}});Object.defineProperties(wa.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.");this.texture.wrapS=a}},wrapT:{get:function(){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.");return this.texture.wrapT},set:function(a){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.");this.texture.wrapT=a}},magFilter:{get:function(){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.");return this.texture.magFilter},
|
|
|
set:function(a){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.");this.texture.magFilter=a}},minFilter:{get:function(){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.");return this.texture.minFilter},set:function(a){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.");this.texture.minFilter=a}},anisotropy:{get:function(){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.");return this.texture.anisotropy},
|
|
@@ -1009,31 +1010,31 @@ this.texture.repeat=a}},format:{get:function(){console.warn("THREE.WebGLRenderTa
|
|
|
return this.texture.generateMipmaps},set:function(a){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.");this.texture.generateMipmaps=a}}});Object.defineProperties(hd.prototype,{load:{value:function(a){console.warn("THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.");var b=this;(new sf).load(a,function(a){b.setBuffer(a)});return this}},startTime:{set:function(){console.warn("THREE.Audio: .startTime is now .play( delay ).")}}});Lg.prototype.getData=
|
|
|
function(){console.warn("THREE.AudioAnalyser: .getData() is now .getFrequencyData().");return this.getFrequencyData()};Fc.prototype.updateCubeMap=function(a,b){console.warn("THREE.CubeCamera: .updateCubeMap() is now .update().");return this.update(a,b)};Kb.crossOrigin=void 0;Kb.loadTexture=function(a,b,c,d){console.warn("THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.");var e=new df;e.setCrossOrigin(this.crossOrigin);a=e.load(a,c,void 0,d);b&&(a.mapping=b);return a};
|
|
|
Kb.loadTextureCube=function(a,b,c,d){console.warn("THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.");var e=new cf;e.setCrossOrigin(this.crossOrigin);a=e.load(a,c,void 0,d);b&&(a.mapping=b);return a};Kb.loadCompressedTexture=function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")};Kb.loadCompressedTextureCube=function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")};
|
|
|
-"undefined"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:"114dev"}}));h.ACESFilmicToneMapping=5;h.AddEquation=100;h.AddOperation=2;h.AdditiveBlending=2;h.AlphaFormat=1021;h.AlwaysDepth=1;h.AlwaysStencilFunc=519;h.AmbientLight=lf;h.AmbientLightProbe=Gg;h.AnimationClip=Pa;h.AnimationLoader=xg;h.AnimationMixer=Ng;h.AnimationObjectGroup=mi;h.AnimationUtils=fa;h.ArcCurve=fd;h.ArrayCamera=Pe;h.ArrowHelper=wb;h.Audio=hd;h.AudioAnalyser=Lg;h.AudioContext=
|
|
|
+"undefined"!==typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:"114dev"}}));h.ACESFilmicToneMapping=5;h.AddEquation=100;h.AddOperation=2;h.AdditiveBlending=2;h.AlphaFormat=1021;h.AlwaysDepth=1;h.AlwaysStencilFunc=519;h.AmbientLight=lf;h.AmbientLightProbe=Gg;h.AnimationClip=Pa;h.AnimationLoader=xg;h.AnimationMixer=Ng;h.AnimationObjectGroup=ni;h.AnimationUtils=fa;h.ArcCurve=fd;h.ArrayCamera=Pe;h.ArrowHelper=wb;h.Audio=hd;h.AudioAnalyser=Lg;h.AudioContext=
|
|
|
Jg;h.AudioListener=Ig;h.AudioLoader=sf;h.AxesHelper=we;h.AxisHelper=function(a){console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper.");return new we(a)};h.BackSide=1;h.BasicDepthPacking=3200;h.BasicShadowMap=0;h.BinaryTextureLoader=function(a){console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader.");return new bf(a)};h.Bone=qg;h.BooleanKeyframeTrack=Ye;h.BoundingBoxHelper=function(a,b){console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead.");
|
|
|
-return new vb(a,b)};h.Box2=Qg;h.Box3=Ra;h.Box3Helper=ue;h.BoxBufferGeometry=Id;h.BoxGeometry=mh;h.BoxHelper=vb;h.BufferAttribute=L;h.BufferGeometry=A;h.BufferGeometryLoader=qf;h.ByteType=1010;h.Cache=uc;h.Camera=cb;h.CameraHelper=te;h.CanvasRenderer=function(){console.error("THREE.CanvasRenderer has been removed")};h.CanvasTexture=Td;h.CatmullRomCurve3=za;h.CineonToneMapping=4;h.CircleBufferGeometry=bd;h.CircleGeometry=ne;h.ClampToEdgeWrapping=1001;h.Clock=Hg;h.ClosedSplineCurve3=Ei;h.Color=C;h.ColorKeyframeTrack=
|
|
|
-Ze;h.CompressedTexture=Pc;h.CompressedTextureLoader=yg;h.ConeBufferGeometry=me;h.ConeGeometry=le;h.CubeCamera=Fc;h.CubeGeometry=mh;h.CubeReflectionMapping=301;h.CubeRefractionMapping=302;h.CubeTexture=pb;h.CubeTextureLoader=cf;h.CubeUVReflectionMapping=306;h.CubeUVRefractionMapping=307;h.CubicBezierCurve=Va;h.CubicBezierCurve3=gb;h.CubicInterpolant=We;h.CullFaceBack=1;h.CullFaceFront=2;h.CullFaceFrontBack=3;h.CullFaceNone=0;h.Curve=I;h.CurvePath=ub;h.CustomBlending=5;h.CylinderBufferGeometry=sb;h.CylinderGeometry=
|
|
|
-ic;h.Cylindrical=ri;h.DataTexture=$b;h.DataTexture2DArray=Hc;h.DataTexture3D=Ic;h.DataTextureLoader=bf;h.DecrementStencilOp=7683;h.DecrementWrapStencilOp=34056;h.DefaultLoadingManager=ii;h.DepthFormat=1026;h.DepthStencilFormat=1027;h.DepthTexture=Ud;h.DirectionalLight=kf;h.DirectionalLightHelper=ld;h.DirectionalLightShadow=jf;h.DiscreteInterpolant=Xe;h.DodecahedronBufferGeometry=Uc;h.DodecahedronGeometry=$d;h.DoubleSide=2;h.DstAlphaFactor=206;h.DstColorFactor=208;h.DynamicBufferAttribute=function(a,
|
|
|
+return new vb(a,b)};h.Box2=Rg;h.Box3=Ra;h.Box3Helper=ue;h.BoxBufferGeometry=Id;h.BoxGeometry=nh;h.BoxHelper=vb;h.BufferAttribute=L;h.BufferGeometry=A;h.BufferGeometryLoader=qf;h.ByteType=1010;h.Cache=uc;h.Camera=cb;h.CameraHelper=te;h.CanvasRenderer=function(){console.error("THREE.CanvasRenderer has been removed")};h.CanvasTexture=Td;h.CatmullRomCurve3=za;h.CineonToneMapping=4;h.CircleBufferGeometry=bd;h.CircleGeometry=ne;h.ClampToEdgeWrapping=1001;h.Clock=Hg;h.ClosedSplineCurve3=Ei;h.Color=C;h.ColorKeyframeTrack=
|
|
|
+Ze;h.CompressedTexture=Pc;h.CompressedTextureLoader=yg;h.ConeBufferGeometry=me;h.ConeGeometry=le;h.CubeCamera=Fc;h.CubeGeometry=nh;h.CubeReflectionMapping=301;h.CubeRefractionMapping=302;h.CubeTexture=pb;h.CubeTextureLoader=cf;h.CubeUVReflectionMapping=306;h.CubeUVRefractionMapping=307;h.CubicBezierCurve=Va;h.CubicBezierCurve3=gb;h.CubicInterpolant=We;h.CullFaceBack=1;h.CullFaceFront=2;h.CullFaceFrontBack=3;h.CullFaceNone=0;h.Curve=I;h.CurvePath=ub;h.CustomBlending=5;h.CylinderBufferGeometry=sb;h.CylinderGeometry=
|
|
|
+ic;h.Cylindrical=ri;h.DataTexture=$b;h.DataTexture2DArray=Hc;h.DataTexture3D=Ic;h.DataTextureLoader=bf;h.DecrementStencilOp=7683;h.DecrementWrapStencilOp=34056;h.DefaultLoadingManager=ji;h.DepthFormat=1026;h.DepthStencilFormat=1027;h.DepthTexture=Ud;h.DirectionalLight=kf;h.DirectionalLightHelper=ld;h.DirectionalLightShadow=jf;h.DiscreteInterpolant=Xe;h.DodecahedronBufferGeometry=Uc;h.DodecahedronGeometry=$d;h.DoubleSide=2;h.DstAlphaFactor=206;h.DstColorFactor=208;h.DynamicBufferAttribute=function(a,
|
|
|
b){console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setUsage( THREE.DynamicDrawUsage ) instead.");return(new L(a,b)).setUsage(35048)};h.DynamicCopyUsage=35050;h.DynamicDrawUsage=35048;h.DynamicReadUsage=35049;h.EdgesGeometry=ad;h.EdgesHelper=function(a,b){console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead.");return new la(new ad(a.geometry),new ja({color:void 0!==b?b:16777215}))};h.EllipseCurve=La;h.EqualDepth=4;h.EqualStencilFunc=
|
|
|
514;h.EquirectangularReflectionMapping=303;h.EquirectangularRefractionMapping=304;h.Euler=Sb;h.EventDispatcher=Ea;h.ExtrudeBufferGeometry=eb;h.ExtrudeGeometry=ec;h.Face3=Ac;h.Face4=function(a,b,c,d,e,f,g){console.warn("THREE.Face4 has been removed. A THREE.Face3 will be created instead.");return new Ac(a,b,c,e,f,g)};h.FaceColors=1;h.FileLoader=Qa;h.FlatShading=1;h.Float32Attribute=function(a,b){console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead.");
|
|
|
return new B(a,b)};h.Float32BufferAttribute=B;h.Float64Attribute=function(a,b){console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead.");return new Fd(a,b)};h.Float64BufferAttribute=Fd;h.FloatType=1015;h.Fog=Re;h.FogExp2=Qe;h.Font=Dg;h.FontLoader=Eg;h.FrontFaceDirectionCCW=1;h.FrontFaceDirectionCW=0;h.FrontSide=0;h.Frustum=Gc;h.GammaEncoding=3007;h.Geometry=N;h.GeometryUtils={merge:function(a,b,c){console.warn("THREE.GeometryUtils: .merge() has been moved to Geometry. Use geometry.merge( geometry2, matrix, materialIndexOffset ) instead.");
|
|
|
if(b.isMesh){b.matrixAutoUpdate&&b.updateMatrix();var d=b.matrix;b=b.geometry}a.merge(b,d,c)},center:function(a){console.warn("THREE.GeometryUtils: .center() has been moved to Geometry. Use geometry.center() instead.");return a.center()}};h.GreaterDepth=6;h.GreaterEqualDepth=5;h.GreaterEqualStencilFunc=518;h.GreaterStencilFunc=516;h.GridHelper=vf;h.Group=Lc;h.HalfFloatType=1016;h.HemisphereLight=ef;h.HemisphereLightHelper=kd;h.HemisphereLightProbe=Fg;h.IcosahedronBufferGeometry=Tc;h.IcosahedronGeometry=
|
|
|
Zd;h.ImageBitmapLoader=Bg;h.ImageLoader=ed;h.ImageUtils=Kb;h.ImmediateRenderObject=se;h.IncrementStencilOp=7682;h.IncrementWrapStencilOp=34055;h.InstancedBufferAttribute=pf;h.InstancedBufferGeometry=of;h.InstancedInterleavedBuffer=Og;h.InstancedMesh=Ue;h.Int16Attribute=function(a,b){console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead.");return new Dd(a,b)};h.Int16BufferAttribute=Dd;h.Int32Attribute=function(a,b){console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead.");
|
|
|
return new Ed(a,b)};h.Int32BufferAttribute=Ed;h.Int8Attribute=function(a,b){console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead.");return new Ad(a,b)};h.Int8BufferAttribute=Ad;h.IntType=1013;h.InterleavedBuffer=qb;h.InterleavedBufferAttribute=Od;h.Interpolant=Ka;h.InterpolateDiscrete=2300;h.InterpolateLinear=2301;h.InterpolateSmooth=2302;h.InvertStencilOp=5386;h.JSONLoader=function(){console.error("THREE.JSONLoader has been removed.")};h.KeepStencilOp=7680;
|
|
|
-h.KeyframeTrack=ua;h.LOD=Rd;h.LatheBufferGeometry=$c;h.LatheGeometry=ke;h.Layers=$f;h.LensFlare=function(){console.error("THREE.LensFlare has been moved to /examples/js/objects/Lensflare.js")};h.LessDepth=2;h.LessEqualDepth=3;h.LessEqualStencilFunc=515;h.LessStencilFunc=513;h.Light=ba;h.LightProbe=$a;h.LightShadow=ib;h.Line=Ja;h.Line3=Rg;h.LineBasicMaterial=ja;h.LineCurve=Da;h.LineCurve3=Wa;h.LineDashedMaterial=pc;h.LineLoop=Ve;h.LinePieces=1;h.LineSegments=la;h.LineStrip=0;h.LinearEncoding=3E3;h.LinearFilter=
|
|
|
-1006;h.LinearInterpolant=oe;h.LinearMipMapLinearFilter=1008;h.LinearMipMapNearestFilter=1007;h.LinearMipmapLinearFilter=1008;h.LinearMipmapNearestFilter=1007;h.LinearToneMapping=1;h.Loader=V;h.LoaderUtils=sh;h.LoadingManager=wg;h.LogLuvEncoding=3003;h.LoopOnce=2200;h.LoopPingPong=2202;h.LoopRepeat=2201;h.LuminanceAlphaFormat=1025;h.LuminanceFormat=1024;h.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2};h.Material=K;h.MaterialLoader=nf;h.Math=M;h.MathUtils=M;h.Matrix3=ya;h.Matrix4=P;h.MaxEquation=
|
|
|
+h.KeyframeTrack=ua;h.LOD=Rd;h.LatheBufferGeometry=$c;h.LatheGeometry=ke;h.Layers=$f;h.LensFlare=function(){console.error("THREE.LensFlare has been moved to /examples/js/objects/Lensflare.js")};h.LessDepth=2;h.LessEqualDepth=3;h.LessEqualStencilFunc=515;h.LessStencilFunc=513;h.Light=ba;h.LightProbe=$a;h.LightShadow=ib;h.Line=Ja;h.Line3=Sg;h.LineBasicMaterial=ja;h.LineCurve=Da;h.LineCurve3=Wa;h.LineDashedMaterial=pc;h.LineLoop=Ve;h.LinePieces=1;h.LineSegments=la;h.LineStrip=0;h.LinearEncoding=3E3;h.LinearFilter=
|
|
|
+1006;h.LinearInterpolant=oe;h.LinearMipMapLinearFilter=1008;h.LinearMipMapNearestFilter=1007;h.LinearMipmapLinearFilter=1008;h.LinearMipmapNearestFilter=1007;h.LinearToneMapping=1;h.Loader=V;h.LoaderUtils=th;h.LoadingManager=wg;h.LogLuvEncoding=3003;h.LoopOnce=2200;h.LoopPingPong=2202;h.LoopRepeat=2201;h.LuminanceAlphaFormat=1025;h.LuminanceFormat=1024;h.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2};h.Material=K;h.MaterialLoader=nf;h.Math=M;h.MathUtils=M;h.Matrix3=ya;h.Matrix4=P;h.MaxEquation=
|
|
|
104;h.Mesh=ca;h.MeshBasicMaterial=Na;h.MeshDepthMaterial=Eb;h.MeshDistanceMaterial=Fb;h.MeshFaceMaterial=function(a){console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead.");return a};h.MeshLambertMaterial=nc;h.MeshMatcapMaterial=oc;h.MeshNormalMaterial=mc;h.MeshPhongMaterial=Ib;h.MeshPhysicalMaterial=kc;h.MeshStandardMaterial=fb;h.MeshToonMaterial=lc;h.MinEquation=103;h.MirroredRepeatWrapping=1002;h.MixOperation=1;h.MultiMaterial=function(a){void 0===a&&(a=[]);console.warn("THREE.MultiMaterial has been removed. Use an Array instead.");
|
|
|
a.isMultiMaterial=!0;a.materials=a;a.clone=function(){return a.slice()};return a};h.MultiplyBlending=4;h.MultiplyOperation=0;h.NearestFilter=1003;h.NearestMipMapLinearFilter=1005;h.NearestMipMapNearestFilter=1004;h.NearestMipmapLinearFilter=1005;h.NearestMipmapNearestFilter=1004;h.NeverDepth=0;h.NeverStencilFunc=512;h.NoBlending=0;h.NoColors=0;h.NoToneMapping=0;h.NormalBlending=1;h.NotEqualDepth=7;h.NotEqualStencilFunc=517;h.NumberKeyframeTrack=cd;h.Object3D=E;h.ObjectLoader=rf;h.ObjectSpaceNormalMap=
|
|
|
-1;h.OctahedronBufferGeometry=bc;h.OctahedronGeometry=Yd;h.OneFactor=201;h.OneMinusDstAlphaFactor=207;h.OneMinusDstColorFactor=209;h.OneMinusSrcAlphaFactor=205;h.OneMinusSrcColorFactor=203;h.OrthographicCamera=gd;h.PCFShadowMap=1;h.PCFSoftShadowMap=2;h.PMREMGenerator=Tg;h.ParametricBufferGeometry=Rc;h.ParametricGeometry=Vd;h.Particle=function(a){console.warn("THREE.Particle has been renamed to THREE.Sprite.");return new Pd(a)};h.ParticleBasicMaterial=function(a){console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial.");
|
|
|
+1;h.OctahedronBufferGeometry=bc;h.OctahedronGeometry=Yd;h.OneFactor=201;h.OneMinusDstAlphaFactor=207;h.OneMinusDstColorFactor=209;h.OneMinusSrcAlphaFactor=205;h.OneMinusSrcColorFactor=203;h.OrthographicCamera=gd;h.PCFShadowMap=1;h.PCFSoftShadowMap=2;h.PMREMGenerator=Ug;h.ParametricBufferGeometry=Rc;h.ParametricGeometry=Vd;h.Particle=function(a){console.warn("THREE.Particle has been renamed to THREE.Sprite.");return new Pd(a)};h.ParticleBasicMaterial=function(a){console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial.");
|
|
|
return new Ua(a)};h.ParticleSystem=function(a,b){console.warn("THREE.ParticleSystem has been renamed to THREE.Points.");return new Oc(a,b)};h.ParticleSystemMaterial=function(a){console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial.");return new Ua(a)};h.Path=Za;h.PerspectiveCamera=ea;h.Plane=Sa;h.PlaneBufferGeometry=ac;h.PlaneGeometry=Hd;h.PlaneHelper=ve;h.PointCloud=function(a,b){console.warn("THREE.PointCloud has been renamed to THREE.Points.");return new Oc(a,b)};
|
|
|
h.PointCloudMaterial=function(a){console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial.");return new Ua(a)};h.PointLight=hf;h.PointLightHelper=jd;h.Points=Oc;h.PointsMaterial=Ua;h.PolarGridHelper=wf;h.PolyhedronBufferGeometry=Ha;h.PolyhedronGeometry=Wd;h.PositionalAudio=Kg;h.PropertyBinding=Aa;h.PropertyMixer=Mg;h.QuadraticBezierCurve=Xa;h.QuadraticBezierCurve3=hb;h.Quaternion=Ca;h.QuaternionKeyframeTrack=pe;h.QuaternionLinearInterpolant=$e;h.REVISION="114dev";h.RGBADepthPacking=
|
|
|
3201;h.RGBAFormat=1023;h.RGBAIntegerFormat=1033;h.RGBA_ASTC_10x10_Format=37819;h.RGBA_ASTC_10x5_Format=37816;h.RGBA_ASTC_10x6_Format=37817;h.RGBA_ASTC_10x8_Format=37818;h.RGBA_ASTC_12x10_Format=37820;h.RGBA_ASTC_12x12_Format=37821;h.RGBA_ASTC_4x4_Format=37808;h.RGBA_ASTC_5x4_Format=37809;h.RGBA_ASTC_5x5_Format=37810;h.RGBA_ASTC_6x5_Format=37811;h.RGBA_ASTC_6x6_Format=37812;h.RGBA_ASTC_8x5_Format=37813;h.RGBA_ASTC_8x6_Format=37814;h.RGBA_ASTC_8x8_Format=37815;h.RGBA_ETC2_EAC_Format=37496;h.RGBA_PVRTC_2BPPV1_Format=
|
|
|
-35843;h.RGBA_PVRTC_4BPPV1_Format=35842;h.RGBA_S3TC_DXT1_Format=33777;h.RGBA_S3TC_DXT3_Format=33778;h.RGBA_S3TC_DXT5_Format=33779;h.RGBDEncoding=3006;h.RGBEEncoding=3002;h.RGBEFormat=1023;h.RGBFormat=1022;h.RGBIntegerFormat=1032;h.RGBM16Encoding=3005;h.RGBM7Encoding=3004;h.RGB_ETC1_Format=36196;h.RGB_ETC2_Format=37492;h.RGB_PVRTC_2BPPV1_Format=35841;h.RGB_PVRTC_4BPPV1_Format=35840;h.RGB_S3TC_DXT1_Format=33776;h.RGFormat=1030;h.RGIntegerFormat=1031;h.RawShaderMaterial=tb;h.Ray=Ub;h.Raycaster=oi;h.RectAreaLight=
|
|
|
+35843;h.RGBA_PVRTC_4BPPV1_Format=35842;h.RGBA_S3TC_DXT1_Format=33777;h.RGBA_S3TC_DXT3_Format=33778;h.RGBA_S3TC_DXT5_Format=33779;h.RGBDEncoding=3006;h.RGBEEncoding=3002;h.RGBEFormat=1023;h.RGBFormat=1022;h.RGBIntegerFormat=1032;h.RGBM16Encoding=3005;h.RGBM7Encoding=3004;h.RGB_ETC1_Format=36196;h.RGB_ETC2_Format=37492;h.RGB_PVRTC_2BPPV1_Format=35841;h.RGB_PVRTC_4BPPV1_Format=35840;h.RGB_S3TC_DXT1_Format=33776;h.RGFormat=1030;h.RGIntegerFormat=1031;h.RawShaderMaterial=tb;h.Ray=Ub;h.Raycaster=Pg;h.RectAreaLight=
|
|
|
mf;h.RedFormat=1028;h.RedIntegerFormat=1029;h.ReinhardToneMapping=2;h.RepeatWrapping=1E3;h.ReplaceStencilOp=7681;h.ReverseSubtractEquation=102;h.RingBufferGeometry=Zc;h.RingGeometry=je;h.Scene=nb;h.SceneUtils={createMultiMaterialObject:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")},detach:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")},attach:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")}};
|
|
|
-h.ShaderChunk=O;h.ShaderLib=db;h.ShaderMaterial=pa;h.ShadowMaterial=jc;h.Shape=Jb;h.ShapeBufferGeometry=hc;h.ShapeGeometry=gc;h.ShapePath=Cg;h.ShapeUtils=rb;h.ShortType=1011;h.Skeleton=Te;h.SkeletonHelper=qc;h.SkinnedMesh=Sd;h.SmoothShading=2;h.Sphere=ob;h.SphereBufferGeometry=fc;h.SphereGeometry=ie;h.Spherical=qi;h.SphericalHarmonics3=tf;h.SphericalReflectionMapping=305;h.Spline=$g;h.SplineCurve=Ya;h.SplineCurve3=Fi;h.SpotLight=gf;h.SpotLightHelper=id;h.SpotLightShadow=ff;h.Sprite=Pd;h.SpriteMaterial=
|
|
|
-Hb;h.SrcAlphaFactor=204;h.SrcAlphaSaturateFactor=210;h.SrcColorFactor=202;h.StaticCopyUsage=35046;h.StaticDrawUsage=35044;h.StaticReadUsage=35045;h.StereoCamera=ki;h.StreamCopyUsage=35042;h.StreamDrawUsage=35040;h.StreamReadUsage=35041;h.StringKeyframeTrack=af;h.SubtractEquation=101;h.SubtractiveBlending=3;h.TOUCH={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3};h.TangentSpaceNormalMap=0;h.TetrahedronBufferGeometry=Sc;h.TetrahedronGeometry=Xd;h.TextBufferGeometry=Yc;h.TextGeometry=he;h.Texture=Z;h.TextureLoader=
|
|
|
+h.ShaderChunk=O;h.ShaderLib=db;h.ShaderMaterial=pa;h.ShadowMaterial=jc;h.Shape=Jb;h.ShapeBufferGeometry=hc;h.ShapeGeometry=gc;h.ShapePath=Cg;h.ShapeUtils=rb;h.ShortType=1011;h.Skeleton=Te;h.SkeletonHelper=qc;h.SkinnedMesh=Sd;h.SmoothShading=2;h.Sphere=ob;h.SphereBufferGeometry=fc;h.SphereGeometry=ie;h.Spherical=qi;h.SphericalHarmonics3=tf;h.SphericalReflectionMapping=305;h.Spline=ah;h.SplineCurve=Ya;h.SplineCurve3=Fi;h.SpotLight=gf;h.SpotLightHelper=id;h.SpotLightShadow=ff;h.Sprite=Pd;h.SpriteMaterial=
|
|
|
+Hb;h.SrcAlphaFactor=204;h.SrcAlphaSaturateFactor=210;h.SrcColorFactor=202;h.StaticCopyUsage=35046;h.StaticDrawUsage=35044;h.StaticReadUsage=35045;h.StereoCamera=li;h.StreamCopyUsage=35042;h.StreamDrawUsage=35040;h.StreamReadUsage=35041;h.StringKeyframeTrack=af;h.SubtractEquation=101;h.SubtractiveBlending=3;h.TOUCH={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3};h.TangentSpaceNormalMap=0;h.TetrahedronBufferGeometry=Sc;h.TetrahedronGeometry=Xd;h.TextBufferGeometry=Yc;h.TextGeometry=he;h.Texture=Z;h.TextureLoader=
|
|
|
df;h.TorusBufferGeometry=Wc;h.TorusGeometry=ce;h.TorusKnotBufferGeometry=Vc;h.TorusKnotGeometry=be;h.Triangle=na;h.TriangleFanDrawMode=2;h.TriangleStripDrawMode=1;h.TrianglesDrawMode=0;h.TubeBufferGeometry=cc;h.TubeGeometry=ae;h.UVMapping=300;h.Uint16Attribute=function(a,b){console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead.");return new Vb(a,b)};h.Uint16BufferAttribute=Vb;h.Uint32Attribute=function(a,b){console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead.");
|
|
|
return new Wb(a,b)};h.Uint32BufferAttribute=Wb;h.Uint8Attribute=function(a,b){console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead.");return new Bd(a,b)};h.Uint8BufferAttribute=Bd;h.Uint8ClampedAttribute=function(a,b){console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead.");return new Cd(a,b)};h.Uint8ClampedBufferAttribute=Cd;h.Uncharted2ToneMapping=3;h.Uniform=uf;h.UniformsLib=G;h.UniformsUtils=
|
|
|
-Sh;h.UnsignedByteType=1009;h.UnsignedInt248Type=1020;h.UnsignedIntType=1014;h.UnsignedShort4444Type=1017;h.UnsignedShort5551Type=1018;h.UnsignedShort565Type=1019;h.UnsignedShortType=1012;h.VSMShadowMap=3;h.Vector2=v;h.Vector3=n;h.Vector4=ia;h.VectorKeyframeTrack=dd;h.Vertex=function(a,b,c){console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead.");return new n(a,b,c)};h.VertexColors=2;h.VideoTexture=tg;h.WebGLCubeRenderTarget=Cb;h.WebGLMultisampleRenderTarget=Zf;h.WebGLRenderTarget=
|
|
|
-wa;h.WebGLRenderTargetCube=function(a,b,c){console.warn("THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options ).");return new Cb(a,c)};h.WebGLRenderer=pg;h.WebGLUtils=Xh;h.WireframeGeometry=Qc;h.WireframeHelper=function(a,b){console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead.");return new la(new Qc(a.geometry),new ja({color:void 0!==b?b:16777215}))};h.WrapAroundEnding=2402;h.XHRLoader=function(a){console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader.");
|
|
|
+Th;h.UnsignedByteType=1009;h.UnsignedInt248Type=1020;h.UnsignedIntType=1014;h.UnsignedShort4444Type=1017;h.UnsignedShort5551Type=1018;h.UnsignedShort565Type=1019;h.UnsignedShortType=1012;h.VSMShadowMap=3;h.Vector2=v;h.Vector3=n;h.Vector4=ia;h.VectorKeyframeTrack=dd;h.Vertex=function(a,b,c){console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead.");return new n(a,b,c)};h.VertexColors=2;h.VideoTexture=tg;h.WebGLCubeRenderTarget=Cb;h.WebGLMultisampleRenderTarget=Zf;h.WebGLRenderTarget=
|
|
|
+wa;h.WebGLRenderTargetCube=function(a,b,c){console.warn("THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options ).");return new Cb(a,c)};h.WebGLRenderer=pg;h.WebGLUtils=Yh;h.WireframeGeometry=Qc;h.WireframeHelper=function(a,b){console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead.");return new la(new Qc(a.geometry),new ja({color:void 0!==b?b:16777215}))};h.WrapAroundEnding=2402;h.XHRLoader=function(a){console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader.");
|
|
|
return new Qa(a)};h.ZeroCurvatureEnding=2400;h.ZeroFactor=200;h.ZeroSlopeEnding=2401;h.ZeroStencilOp=0;h.sRGBEncoding=3001;Object.defineProperty(h,"__esModule",{value:!0})});
|