@needle-tools/engine 3.36.1-beta โ 3.36.2-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -1
- package/dist/needle-engine.js +6 -6
- package/dist/needle-engine.light.js +6 -6
- package/dist/needle-engine.light.min.js +22 -22
- package/dist/needle-engine.light.umd.cjs +2 -2
- package/dist/needle-engine.min.js +2 -2
- package/dist/needle-engine.umd.cjs +2 -2
- package/lib/engine/engine_networking.d.ts +5 -3
- package/lib/engine/engine_networking.js +5 -3
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine-components/Renderer.js +6 -2
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.d.ts +31 -2
- package/lib/engine-components/SceneSwitcher.js +19 -2
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/package.json +1 -1
- package/src/engine/engine_networking.ts +5 -3
- package/src/engine-components/Renderer.ts +7 -2
- package/src/engine-components/SceneSwitcher.ts +32 -3
|
@@ -4341,7 +4341,7 @@ void main() {
|
|
|
4341
4341
|
`;s+=i(o);const n=Object.keys(I);let C="";for(let a=0;a<n.length;a++){const B=n[a],Q=I[B];if(rl.has(Q)){C+="";continue}rl.set(Q,!0),C+=B+":"+t(Q,o+1),a<n.length-1&&(C+=", "),C.length>=60&&(C+=`
|
|
4342
4342
|
`,C+=i(o),s+=C,C="")}return s+=C,s+=`
|
|
4343
4343
|
}`,s}return I}function i(I){let o="";for(let s=0;s<I;s++)o+=" ";return o}}const Y9=IA("nodevlogs");function di(g,A=po.Log){cn(A,g)}function si(g){di(g,po.Warn)}function zU(g){di(g,po.Error)}let XG;function pe(){return Y9?!1:XG!==void 0?XG:XI()}function T9(g){XG=g}const qr=new PB,II=new y,sa=new y,gi=new kA,Fv={X:new y(1,0,0),Y:new y(0,1,0),Z:new y(0,0,1)},Mm={type:"change"},Kv={type:"mouseDown"},Jv={type:"mouseUp",mode:null},vv={type:"objectChange"};class _9 extends pA{constructor(A,e){super(),e===void 0&&(console.warn('THREE.TransformControls: The second parameter "domElement" is now mandatory.'),e=document),this.isTransformControls=!0,this.visible=!1,this.domElement=e,this.domElement.style.touchAction="none";const t=new VU;this._gizmo=t,this.add(t);const i=new z9;this._plane=i,this.add(i);const I=this;function o(p,u){let f=u;Object.defineProperty(I,p,{get:function(){return f!==void 0?f:u},set:function(m){f!==m&&(f=m,i[p]=m,t[p]=m,I.dispatchEvent({type:p+"-changed",value:m}),I.dispatchEvent(Mm))}}),I[p]=u,i[p]=u,t[p]=u}o("camera",A),o("object",void 0),o("enabled",!0),o("axis",null),o("mode","translate"),o("translationSnap",null),o("rotationSnap",null),o("scaleSnap",null),o("space","world"),o("size",1),o("dragging",!1),o("showX",!0),o("showY",!0),o("showZ",!0);const s=new y,n=new y,C=new kA,a=new kA,B=new y,Q=new kA,E=new y,c=new y,d=new y,h=0,l=new y;o("worldPosition",s),o("worldPositionStart",n),o("worldQuaternion",C),o("worldQuaternionStart",a),o("cameraPosition",B),o("cameraQuaternion",Q),o("pointStart",E),o("pointEnd",c),o("rotationAxis",d),o("rotationAngle",h),o("eye",l),this._offset=new y,this._startNorm=new y,this._endNorm=new y,this._cameraScale=new y,this._parentPosition=new y,this._parentQuaternion=new kA,this._parentQuaternionInv=new kA,this._parentScale=new y,this._worldScaleStart=new y,this._worldQuaternionInv=new kA,this._worldScale=new y,this._positionStart=new y,this._quaternionStart=new kA,this._scaleStart=new y,this._getPointer=H9.bind(this),this._onPointerDown=P9.bind(this),this._onPointerHover=O9.bind(this),this._onPointerMove=W9.bind(this),this._onPointerUp=j9.bind(this),this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointermove",this._onPointerHover),this.domElement.addEventListener("pointerup",this._onPointerUp)}updateMatrixWorld(){this.object!==void 0&&(this.object.updateMatrixWorld(),this.object.parent===null?console.error("TransformControls: The attached 3D object must be a part of the scene graph."):this.object.parent.matrixWorld.decompose(this._parentPosition,this._parentQuaternion,this._parentScale),this.object.matrixWorld.decompose(this.worldPosition,this.worldQuaternion,this._worldScale),this._parentQuaternionInv.copy(this._parentQuaternion).invert(),this._worldQuaternionInv.copy(this.worldQuaternion).invert()),this.camera.updateMatrixWorld(),this.camera.matrixWorld.decompose(this.cameraPosition,this.cameraQuaternion,this._cameraScale),this.camera.isOrthographicCamera?this.camera.getWorldDirection(this.eye).negate():this.eye.copy(this.cameraPosition).sub(this.worldPosition).normalize(),super.updateMatrixWorld(this)}pointerHover(A){if(this.object===void 0||this.dragging===!0)return;A!==null&&qr.setFromCamera(A,this.camera);const e=Gm(this._gizmo.picker[this.mode],qr);e?this.axis=e.object.name:this.axis=null}pointerDown(A){if(!(this.object===void 0||this.dragging===!0||A!=null&&A.button!==0)&&this.axis!==null){A!==null&&qr.setFromCamera(A,this.camera);const e=Gm(this._plane,qr,!0);e&&(this.object.updateMatrixWorld(),this.object.parent.updateMatrixWorld(),this._positionStart.copy(this.object.position),this._quaternionStart.copy(this.object.quaternion),this._scaleStart.copy(this.object.scale),this.object.matrixWorld.decompose(this.worldPositionStart,this.worldQuaternionStart,this._worldScaleStart),this.pointStart.copy(e.point).sub(this.worldPositionStart)),this.dragging=!0,Kv.mode=this.mode,this.dispatchEvent(Kv)}}pointerMove(A){const e=this.axis,t=this.mode,i=this.object;let I=this.space;if(t==="scale"?I="local":(e==="E"||e==="XYZE"||e==="XYZ")&&(I="world"),i===void 0||e===null||this.dragging===!1||A!==null&&A.button!==-1)return;A!==null&&qr.setFromCamera(A,this.camera);const o=Gm(this._plane,qr,!0);if(o){if(this.pointEnd.copy(o.point).sub(this.worldPositionStart),t==="translate")this._offset.copy(this.pointEnd).sub(this.pointStart),I==="local"&&e!=="XYZ"&&this._offset.applyQuaternion(this._worldQuaternionInv),e.indexOf("X")===-1&&(this._offset.x=0),e.indexOf("Y")===-1&&(this._offset.y=0),e.indexOf("Z")===-1&&(this._offset.z=0),I==="local"&&e!=="XYZ"?this._offset.applyQuaternion(this._quaternionStart).divide(this._parentScale):this._offset.applyQuaternion(this._parentQuaternionInv).divide(this._parentScale),i.position.copy(this._offset).add(this._positionStart),this.translationSnap&&(I==="local"&&(i.position.applyQuaternion(gi.copy(this._quaternionStart).invert()),e.search("X")!==-1&&(i.position.x=Math.round(i.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(i.position.y=Math.round(i.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(i.position.z=Math.round(i.position.z/this.translationSnap)*this.translationSnap),i.position.applyQuaternion(this._quaternionStart)),I==="world"&&(i.parent&&i.position.add(II.setFromMatrixPosition(i.parent.matrixWorld)),e.search("X")!==-1&&(i.position.x=Math.round(i.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(i.position.y=Math.round(i.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(i.position.z=Math.round(i.position.z/this.translationSnap)*this.translationSnap),i.parent&&i.position.sub(II.setFromMatrixPosition(i.parent.matrixWorld))));else if(t==="scale"){if(e.search("XYZ")!==-1){let s=this.pointEnd.length()/this.pointStart.length();this.pointEnd.dot(this.pointStart)<0&&(s*=-1),sa.set(s,s,s)}else II.copy(this.pointStart),sa.copy(this.pointEnd),II.applyQuaternion(this._worldQuaternionInv),sa.applyQuaternion(this._worldQuaternionInv),sa.divide(II),e.search("X")===-1&&(sa.x=1),e.search("Y")===-1&&(sa.y=1),e.search("Z")===-1&&(sa.z=1);i.scale.copy(this._scaleStart).multiply(sa),this.scaleSnap&&(e.search("X")!==-1&&(i.scale.x=Math.round(i.scale.x/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Y")!==-1&&(i.scale.y=Math.round(i.scale.y/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Z")!==-1&&(i.scale.z=Math.round(i.scale.z/this.scaleSnap)*this.scaleSnap||this.scaleSnap))}else if(t==="rotate"){this._offset.copy(this.pointEnd).sub(this.pointStart);const s=20/this.worldPosition.distanceTo(II.setFromMatrixPosition(this.camera.matrixWorld));let n=!1;e==="XYZE"?(this.rotationAxis.copy(this._offset).cross(this.eye).normalize(),this.rotationAngle=this._offset.dot(II.copy(this.rotationAxis).cross(this.eye))*s):(e==="X"||e==="Y"||e==="Z")&&(this.rotationAxis.copy(Fv[e]),II.copy(Fv[e]),I==="local"&&II.applyQuaternion(this.worldQuaternion),II.cross(this.eye),II.length()===0?n=!0:this.rotationAngle=this._offset.dot(II.normalize())*s),(e==="E"||n)&&(this.rotationAxis.copy(this.eye),this.rotationAngle=this.pointEnd.angleTo(this.pointStart),this._startNorm.copy(this.pointStart).normalize(),this._endNorm.copy(this.pointEnd).normalize(),this.rotationAngle*=this._endNorm.cross(this._startNorm).dot(this.eye)<0?1:-1),this.rotationSnap&&(this.rotationAngle=Math.round(this.rotationAngle/this.rotationSnap)*this.rotationSnap),I==="local"&&e!=="E"&&e!=="XYZE"?(i.quaternion.copy(this._quaternionStart),i.quaternion.multiply(gi.setFromAxisAngle(this.rotationAxis,this.rotationAngle)).normalize()):(this.rotationAxis.applyQuaternion(this._parentQuaternionInv),i.quaternion.copy(gi.setFromAxisAngle(this.rotationAxis,this.rotationAngle)),i.quaternion.multiply(this._quaternionStart).normalize())}this.dispatchEvent(Mm),this.dispatchEvent(vv)}}pointerUp(A){A!==null&&A.button!==0||(this.dragging&&this.axis!==null&&(Jv.mode=this.mode,this.dispatchEvent(Jv)),this.dragging=!1,this.axis=null)}dispose(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerHover),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.traverse(function(A){A.geometry&&A.geometry.dispose(),A.material&&A.material.dispose()})}attach(A){return this.object=A,this.visible=!0,this}detach(){return this.object=void 0,this.visible=!1,this.axis=null,this}reset(){this.enabled&&this.dragging&&(this.object.position.copy(this._positionStart),this.object.quaternion.copy(this._quaternionStart),this.object.scale.copy(this._scaleStart),this.dispatchEvent(Mm),this.dispatchEvent(vv),this.pointStart.copy(this.pointEnd))}getRaycaster(){return qr}getMode(){return this.mode}setMode(A){this.mode=A}setTranslationSnap(A){this.translationSnap=A}setRotationSnap(A){this.rotationSnap=A}setScaleSnap(A){this.scaleSnap=A}setSize(A){this.size=A}setSpace(A){this.space=A}}function H9(g){if(this.domElement.ownerDocument.pointerLockElement)return{x:0,y:0,button:g.button};{const A=this.domElement.getBoundingClientRect();return{x:(g.clientX-A.left)/A.width*2-1,y:-(g.clientY-A.top)/A.height*2+1,button:g.button}}}function O9(g){if(this.enabled)switch(g.pointerType){case"mouse":case"pen":this.pointerHover(this._getPointer(g));break}}function P9(g){this.enabled&&(document.pointerLockElement||this.domElement.setPointerCapture(g.pointerId),this.domElement.addEventListener("pointermove",this._onPointerMove),this.pointerHover(this._getPointer(g)),this.pointerDown(this._getPointer(g)))}function W9(g){this.enabled&&this.pointerMove(this._getPointer(g))}function j9(g){this.enabled&&(this.domElement.releasePointerCapture(g.pointerId),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.pointerUp(this._getPointer(g)))}function Gm(g,A,e){const t=A.intersectObject(g,!0);for(let i=0;i<t.length;i++)if(t[i].object.visible||e)return t[i];return!1}const nf=new Zt,qt=new y(0,1,0),qv=new y(0,0,0),bv=new MA,Cf=new kA,aD=new kA,Ws=new y,Lv=new MA,Tl=new y(1,0,0),AB=new y(0,1,0),_l=new y(0,0,1),af=new y,Bl=new y,Ql=new y;class VU extends pA{constructor(){super(),this.isTransformControlsGizmo=!0,this.type="TransformControlsGizmo";const A=new Bt({depthTest:!1,depthWrite:!1,fog:!1,toneMapped:!1,transparent:!0}),e=new Ti({depthTest:!1,depthWrite:!1,fog:!1,toneMapped:!1,transparent:!0}),t=A.clone();t.opacity=.15;const i=e.clone();i.opacity=.5;const I=A.clone();I.color.setHex(16711680);const o=A.clone();o.color.setHex(65280);const s=A.clone();s.color.setHex(255);const n=A.clone();n.color.setHex(16711680),n.opacity=.5;const C=A.clone();C.color.setHex(65280),C.opacity=.5;const a=A.clone();a.color.setHex(255),a.opacity=.5;const B=A.clone();B.opacity=.25;const Q=A.clone();Q.color.setHex(16776960),Q.opacity=.25,A.clone().color.setHex(16776960);const c=A.clone();c.color.setHex(7895160);const d=new bi(0,.04,.1,12);d.translate(0,.05,0);const h=new _t(.08,.08,.08);h.translate(0,.04,0);const l=new le;l.setAttribute("position",new Qe([0,0,0,1,0,0],3));const p=new bi(.0075,.0075,.5,3);p.translate(0,.25,0);function u(O,v){const q=new QC(O,.0075,3,64,v*Math.PI*2);return q.rotateY(Math.PI/2),q.rotateX(Math.PI/2),q}function f(){const O=new le;return O.setAttribute("position",new Qe([0,0,0,1,1,1],3)),O}const m={X:[[new lA(d,I),[.5,0,0],[0,0,-Math.PI/2]],[new lA(d,I),[-.5,0,0],[0,0,Math.PI/2]],[new lA(p,I),[0,0,0],[0,0,-Math.PI/2]]],Y:[[new lA(d,o),[0,.5,0]],[new lA(d,o),[0,-.5,0],[Math.PI,0,0]],[new lA(p,o)]],Z:[[new lA(d,s),[0,0,.5],[Math.PI/2,0,0]],[new lA(d,s),[0,0,-.5],[-Math.PI/2,0,0]],[new lA(p,s),null,[Math.PI/2,0,0]]],XYZ:[[new lA(new pC(.1,0),B.clone()),[0,0,0]]],XY:[[new lA(new _t(.15,.15,.01),a.clone()),[.15,.15,0]]],YZ:[[new lA(new _t(.15,.15,.01),n.clone()),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new lA(new _t(.15,.15,.01),C.clone()),[.15,0,.15],[-Math.PI/2,0,0]]]},M={X:[[new lA(new bi(.2,0,.6,4),t),[.3,0,0],[0,0,-Math.PI/2]],[new lA(new bi(.2,0,.6,4),t),[-.3,0,0],[0,0,Math.PI/2]]],Y:[[new lA(new bi(.2,0,.6,4),t),[0,.3,0]],[new lA(new bi(.2,0,.6,4),t),[0,-.3,0],[0,0,Math.PI]]],Z:[[new lA(new bi(.2,0,.6,4),t),[0,0,.3],[Math.PI/2,0,0]],[new lA(new bi(.2,0,.6,4),t),[0,0,-.3],[-Math.PI/2,0,0]]],XYZ:[[new lA(new pC(.2,0),t)]],XY:[[new lA(new _t(.2,.2,.01),t),[.15,.15,0]]],YZ:[[new lA(new _t(.2,.2,.01),t),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new lA(new _t(.2,.2,.01),t),[.15,0,.15],[-Math.PI/2,0,0]]]},k={START:[[new lA(new pC(.01,2),i),null,null,null,"helper"]],END:[[new lA(new pC(.01,2),i),null,null,null,"helper"]],DELTA:[[new xi(f(),i),null,null,null,"helper"]],X:[[new xi(l,i.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]],Y:[[new xi(l,i.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],"helper"]],Z:[[new xi(l,i.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],"helper"]]},S={XYZE:[[new lA(u(.5,1),c),null,[0,Math.PI/2,0]]],X:[[new lA(u(.5,.5),I)]],Y:[[new lA(u(.5,.5),o),null,[0,0,-Math.PI/2]]],Z:[[new lA(u(.5,.5),s),null,[0,Math.PI/2,0]]],E:[[new lA(u(.75,1),Q),null,[0,Math.PI/2,0]]]},F={AXIS:[[new xi(l,i.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]]},w={XYZE:[[new lA(new xs(.25,10,8),t)]],X:[[new lA(new QC(.5,.1,4,24),t),[0,0,0],[0,-Math.PI/2,-Math.PI/2]]],Y:[[new lA(new QC(.5,.1,4,24),t),[0,0,0],[Math.PI/2,0,0]]],Z:[[new lA(new QC(.5,.1,4,24),t),[0,0,0],[0,0,-Math.PI/2]]],E:[[new lA(new QC(.75,.1,2,24),t)]]},R={X:[[new lA(h,I),[.5,0,0],[0,0,-Math.PI/2]],[new lA(p,I),[0,0,0],[0,0,-Math.PI/2]],[new lA(h,I),[-.5,0,0],[0,0,Math.PI/2]]],Y:[[new lA(h,o),[0,.5,0]],[new lA(p,o)],[new lA(h,o),[0,-.5,0],[0,0,Math.PI]]],Z:[[new lA(h,s),[0,0,.5],[Math.PI/2,0,0]],[new lA(p,s),[0,0,0],[Math.PI/2,0,0]],[new lA(h,s),[0,0,-.5],[-Math.PI/2,0,0]]],XY:[[new lA(new _t(.15,.15,.01),a),[.15,.15,0]]],YZ:[[new lA(new _t(.15,.15,.01),n),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new lA(new _t(.15,.15,.01),C),[.15,0,.15],[-Math.PI/2,0,0]]],XYZ:[[new lA(new _t(.1,.1,.1),B.clone())]]},H={X:[[new lA(new bi(.2,0,.6,4),t),[.3,0,0],[0,0,-Math.PI/2]],[new lA(new bi(.2,0,.6,4),t),[-.3,0,0],[0,0,Math.PI/2]]],Y:[[new lA(new bi(.2,0,.6,4),t),[0,.3,0]],[new lA(new bi(.2,0,.6,4),t),[0,-.3,0],[0,0,Math.PI]]],Z:[[new lA(new bi(.2,0,.6,4),t),[0,0,.3],[Math.PI/2,0,0]],[new lA(new bi(.2,0,.6,4),t),[0,0,-.3],[-Math.PI/2,0,0]]],XY:[[new lA(new _t(.2,.2,.01),t),[.15,.15,0]]],YZ:[[new lA(new _t(.2,.2,.01),t),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new lA(new _t(.2,.2,.01),t),[.15,0,.15],[-Math.PI/2,0,0]]],XYZ:[[new lA(new _t(.2,.2,.2),t),[0,0,0]]]},x={X:[[new xi(l,i.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]],Y:[[new xi(l,i.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],"helper"]],Z:[[new xi(l,i.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],"helper"]]};function J(O){const v=new pA;for(const q in O)for(let T=O[q].length;T--;){const Z=O[q][T][0].clone(),AA=O[q][T][1],sA=O[q][T][2],QA=O[q][T][3],FA=O[q][T][4];Z.name=q,Z.tag=FA,AA&&Z.position.set(AA[0],AA[1],AA[2]),sA&&Z.rotation.set(sA[0],sA[1],sA[2]),QA&&Z.scale.set(QA[0],QA[1],QA[2]),Z.updateMatrix();const iA=Z.geometry.clone();iA.applyMatrix4(Z.matrix),Z.geometry=iA,Z.renderOrder=1/0,Z.position.set(0,0,0),Z.rotation.set(0,0,0),Z.scale.set(1,1,1),v.add(Z)}return v}this.gizmo={},this.picker={},this.helper={},this.add(this.gizmo.translate=J(m)),this.add(this.gizmo.rotate=J(S)),this.add(this.gizmo.scale=J(R)),this.add(this.picker.translate=J(M)),this.add(this.picker.rotate=J(w)),this.add(this.picker.scale=J(H)),this.add(this.helper.translate=J(k)),this.add(this.helper.rotate=J(F)),this.add(this.helper.scale=J(x)),this.picker.translate.visible=!1,this.picker.rotate.visible=!1,this.picker.scale.visible=!1}updateMatrixWorld(A){const t=(this.mode==="scale"?"local":this.space)==="local"?this.worldQuaternion:aD;this.gizmo.translate.visible=this.mode==="translate",this.gizmo.rotate.visible=this.mode==="rotate",this.gizmo.scale.visible=this.mode==="scale",this.helper.translate.visible=this.mode==="translate",this.helper.rotate.visible=this.mode==="rotate",this.helper.scale.visible=this.mode==="scale";let i=[];i=i.concat(this.picker[this.mode].children),i=i.concat(this.gizmo[this.mode].children),i=i.concat(this.helper[this.mode].children);for(let I=0;I<i.length;I++){const o=i[I];o.visible=!0,o.rotation.set(0,0,0),o.position.copy(this.worldPosition);let s;if(this.camera.isOrthographicCamera?s=(this.camera.top-this.camera.bottom)/this.camera.zoom:s=this.worldPosition.distanceTo(this.cameraPosition)*Math.min(1.9*Math.tan(Math.PI*this.camera.fov/360)/this.camera.zoom,7),o.scale.set(1,1,1).multiplyScalar(s*this.size/4),o.tag==="helper"){o.visible=!1,o.name==="AXIS"?(o.visible=!!this.axis,this.axis==="X"&&(gi.setFromEuler(nf.set(0,0,0)),o.quaternion.copy(t).multiply(gi),Math.abs(qt.copy(Tl).applyQuaternion(t).dot(this.eye))>.9&&(o.visible=!1)),this.axis==="Y"&&(gi.setFromEuler(nf.set(0,0,Math.PI/2)),o.quaternion.copy(t).multiply(gi),Math.abs(qt.copy(AB).applyQuaternion(t).dot(this.eye))>.9&&(o.visible=!1)),this.axis==="Z"&&(gi.setFromEuler(nf.set(0,Math.PI/2,0)),o.quaternion.copy(t).multiply(gi),Math.abs(qt.copy(_l).applyQuaternion(t).dot(this.eye))>.9&&(o.visible=!1)),this.axis==="XYZE"&&(gi.setFromEuler(nf.set(0,Math.PI/2,0)),qt.copy(this.rotationAxis),o.quaternion.setFromRotationMatrix(bv.lookAt(qv,qt,AB)),o.quaternion.multiply(gi),o.visible=this.dragging),this.axis==="E"&&(o.visible=!1)):o.name==="START"?(o.position.copy(this.worldPositionStart),o.visible=this.dragging):o.name==="END"?(o.position.copy(this.worldPosition),o.visible=this.dragging):o.name==="DELTA"?(o.position.copy(this.worldPositionStart),o.quaternion.copy(this.worldQuaternionStart),II.set(1e-10,1e-10,1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1),II.applyQuaternion(this.worldQuaternionStart.clone().invert()),o.scale.copy(II),o.visible=this.dragging):(o.quaternion.copy(t),this.dragging?o.position.copy(this.worldPositionStart):o.position.copy(this.worldPosition),this.axis&&(o.visible=this.axis.search(o.name)!==-1));continue}o.quaternion.copy(t),this.mode==="translate"||this.mode==="scale"?(o.name==="X"&&Math.abs(qt.copy(Tl).applyQuaternion(t).dot(this.eye))>.99&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1),o.name==="Y"&&Math.abs(qt.copy(AB).applyQuaternion(t).dot(this.eye))>.99&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1),o.name==="Z"&&Math.abs(qt.copy(_l).applyQuaternion(t).dot(this.eye))>.99&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1),o.name==="XY"&&Math.abs(qt.copy(_l).applyQuaternion(t).dot(this.eye))<.2&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1),o.name==="YZ"&&Math.abs(qt.copy(Tl).applyQuaternion(t).dot(this.eye))<.2&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1),o.name==="XZ"&&Math.abs(qt.copy(AB).applyQuaternion(t).dot(this.eye))<.2&&(o.scale.set(1e-10,1e-10,1e-10),o.visible=!1)):this.mode==="rotate"&&(Cf.copy(t),qt.copy(this.eye).applyQuaternion(gi.copy(t).invert()),o.name.search("E")!==-1&&o.quaternion.setFromRotationMatrix(bv.lookAt(this.eye,qv,AB)),o.name==="X"&&(gi.setFromAxisAngle(Tl,Math.atan2(-qt.y,qt.z)),gi.multiplyQuaternions(Cf,gi),o.quaternion.copy(gi)),o.name==="Y"&&(gi.setFromAxisAngle(AB,Math.atan2(qt.x,qt.z)),gi.multiplyQuaternions(Cf,gi),o.quaternion.copy(gi)),o.name==="Z"&&(gi.setFromAxisAngle(_l,Math.atan2(qt.y,qt.x)),gi.multiplyQuaternions(Cf,gi),o.quaternion.copy(gi))),o.visible=o.visible&&(o.name.indexOf("X")===-1||this.showX),o.visible=o.visible&&(o.name.indexOf("Y")===-1||this.showY),o.visible=o.visible&&(o.name.indexOf("Z")===-1||this.showZ),o.visible=o.visible&&(o.name.indexOf("E")===-1||this.showX&&this.showY&&this.showZ),o.material._color=o.material._color||o.material.color.clone(),o.material._opacity=o.material._opacity||o.material.opacity,o.material.color.copy(o.material._color),o.material.opacity=o.material._opacity,this.enabled&&this.axis&&(o.name===this.axis||this.axis.split("").some(function(n){return o.name===n}))&&(o.material.color.setHex(16776960),o.material.opacity=1)}super.updateMatrixWorld(A)}}class z9 extends lA{constructor(){super(new Xi(1e5,1e5,2,2),new Bt({visible:!1,wireframe:!0,side:ut,transparent:!0,opacity:.1,toneMapped:!1})),this.isTransformControlsPlane=!0,this.type="TransformControlsPlane"}updateMatrixWorld(A){let e=this.space;switch(this.position.copy(this.worldPosition),this.mode==="scale"&&(e="local"),af.copy(Tl).applyQuaternion(e==="local"?this.worldQuaternion:aD),Bl.copy(AB).applyQuaternion(e==="local"?this.worldQuaternion:aD),Ql.copy(_l).applyQuaternion(e==="local"?this.worldQuaternion:aD),qt.copy(Bl),this.mode){case"translate":case"scale":switch(this.axis){case"X":qt.copy(this.eye).cross(af),Ws.copy(af).cross(qt);break;case"Y":qt.copy(this.eye).cross(Bl),Ws.copy(Bl).cross(qt);break;case"Z":qt.copy(this.eye).cross(Ql),Ws.copy(Ql).cross(qt);break;case"XY":Ws.copy(Ql);break;case"YZ":Ws.copy(af);break;case"XZ":qt.copy(Ql),Ws.copy(Bl);break;case"XYZ":case"E":Ws.set(0,0,0);break}break;case"rotate":default:Ws.set(0,0,0)}Ws.length()===0?this.quaternion.copy(this.cameraQuaternion):(Lv.lookAt(II.set(0,0,0),Ws,qt),this.quaternion.setFromRotationMatrix(Lv)),super.updateMatrixWorld(A)}}const V9=IA("debugpatch");function Xw(g,A,e,t){const i=V9===A;if(!e&&!t)return;const I=A+"___needle";X9(g,A,e,t);const o=Object.getOwnPropertyDescriptor(g,A),s=g[A];i&&console.log("Patch",g.constructor.name,A,o,s),o?(i&&console.log("Apply patch with existing descriptor",g.constructor.name,A,o),typeof o.value=="function"&&(g[A]=Yv(o.value,g,A))):(i&&console.log("Create patch with new property",g.constructor.name,A,o),Object.defineProperty(g,A,{set:function(n){if(typeof n=="function")this[I]=Yv(n,g,A);else{const C=this[I];d_(g,A,this,C,n),this[I]=n,u_(g,A,this,C,n)}},get:function(){const n=this[I];return typeof n=="function"&&n[I]?n[I]:n}}))}function Z9(g,A,e){const t=ZU(g,A);if(t)for(let i=t.length-1;i>=0;i--){const I=t[i];I.prefix===e&&(I.prefix=null),I.postfix===e&&(I.postfix=null),!I.prefix&&!I.postfix&&t.splice(i,1)}}const xv=Symbol("Needle:Patches:WrappedFunction");function Yv(g,A,e){if(g[xv])return g;const t=function(...i){d_(A,e,this,...i);const I=g.apply(this,i);return u_(A,e,this,I,...i),I};return t[xv]=!0,t}const rD="Needle:Patches";function $G(){return globalThis[rD]||(globalThis[rD]=new WeakMap),globalThis[rD]}function ZU(g,A){const e=$G().get(g);return e?e.get(A):null}function X9(g,A,e,t){let i=$G().get(g);i||(i=new Map,$G().set(g,i));let I=i.get(A);I||(I=[],i.set(A,I)),I.push({prefix:e,postfix:t})}function d_(g,A,e,...t){var I;if(!e)return;const i=ZU(g,A);if(i)for(const o of i)(I=o.prefix)==null||I.call(e,...t)}function u_(g,A,e,t,...i){var o;if(!e)return;const I=ZU(g,A);if(I)for(const s of I)(o=s.postfix)==null||o.call(e,t,...i)}const Tv=Symbol("gltf-loader-internal-usage-tracker"),$9=IA("debugusers"),Fh=class{constructor(A){r(this,"parser");r(this,"_getDependency");r(this,"_loadingId");r(this,"_loadedObjects",new Set);this.parser=A,this._getDependency=this.parser.getDependency,this._loadingId=Date.now().toString()}get name(){return"NEEDLE_internal_usage_tracker"}static isLoading(A){return Fh._loadingProcesses>0}beforeRoot(){Fh._loadingProcesses++;const A=this,e=this._getDependency;return this.parser.getDependency=function(t,i){const I=e.call(this,t,i);return I.then(o=>(o&&(A._loadedObjects.add(o),o[Tv]=A._loadingId),o)),I},null}afterRoot(A){Fh._loadingProcesses--,this.parser.getDependency=this._getDependency;for(const e of this._loadedObjects)delete e[Tv],e instanceof pA&&(e.parent||e instanceof lA&&setTimeout(()=>{$9&&console.warn("> GLTF LOADER: Mesh not used in scene!",e),e.material=null,e.geometry=null},1e3));return null}};let Eh=Fh;r(Eh,"_loadingProcesses",0);class p_{constructor(){window.addEventListener("unhandledrejection",A=>{var t;if(A.defaultPrevented)return;const e=(t=A==null?void 0:A.reason)==null?void 0:t.path;if(e){const i=e[0];i&&i.tagName==="IMG"&&(console.warn(`Could not load image:
|
|
4344
|
-
`+i.src),A.preventDefault())}})}}const $w=IA("trackresources");function f_(){return $w==="dispose"}let jB=!0;$w===0&&(jB=!1);function A6(g){jB=g}function D_(){return jB}const y_=Symbol("disposable");function XU(g,A){g&&(g[y_]=A,uB&&console.warn("Set disposable",A,g))}const w_=Symbol("disposed");function e6(g){return g[w_]===!0}function xt(g){var A;if(g){if(g[y_]===!1){uB&&console.warn("Object is marked as not disposable",g);return}if(g[w_]=!0,g instanceof rI)xt(g.environment),xt(g.background),xt(g.customDepthMaterial),xt(g.customDistanceMaterial);else if(g instanceof $o)xt(g.geometry),xt(g.material),xt(g.skeleton),xt(g.bindMatrix),xt(g.bindMatrixInverse),xt(g.customDepthMaterial),xt(g.customDistanceMaterial),g.geometry=null,g.material=null;else if(g instanceof lA)xt(g.geometry),xt(g.material),xt(g.customDepthMaterial),xt(g.customDistanceMaterial),g.geometry=null,g.material=null;else if(g instanceof le){OQ(g);for(const e of Object.keys(g.attributes)){const t=g.attributes[e];xt(t)}}else if(g instanceof ie||g instanceof FI)uB&&console.warn("BufferAttribute dispose not supported",g.count);else if(g instanceof Array)for(const e of g)e instanceof ve&&xt(e);else if(g instanceof ve){OQ(g);for(const t of Object.keys(g)){const i=g[t];i instanceof we&&(xt(i),g[t]=null)}const e=g.uniforms;if(e)for(const t of Object.keys(e)){const i=e[t];i instanceof we?(xt(i),e[t]=null):i instanceof wA&&(xt(i.value),i.value=null)}}else g instanceof we?(OQ(g),OQ(g.source),((A=g.source)==null?void 0:A.data)instanceof ImageBitmap&&OQ(g.source.data)):g instanceof lc?(OQ(g.boneTexture),g.boneTexture=null):g instanceof Hd||!(g instanceof pA)&&uB&&console.warn("Unknown object type",g)}}function OQ(g){g&&((uB||f_()||$w)&&console.warn("๐งจ FREE",g),g instanceof ImageBitmap?g.close():g instanceof uC?g.data=null:g.dispose())}function S_(g){(g instanceof lA||g instanceof $o)&&(g.material=null,g.geometry=null)}const t6=new Set;function AS(g,A,e=null,t){if(t||(t=t6,t.clear()),!g)return t;const i=g[sd];if(i)for(const I of i)t.has(I)||(e==null?void 0:e.call(null,I))!==!1&&(t.add(I),A&&AS(I,!0,e,t));return t}function i6(g){return g[Hl]}const uB=IA("debugresourceusers")||IA("debugmemory"),sd=Symbol("needle-resource-users"),Hl=Symbol("needle-resource-users-count");function dI(g,A){Xw(g,A,function(e,t){jB&&(Qy(sd,this,e,!1),Qy(sd,this,t,!0))})}jB&&(dI(lA.prototype,"material"),dI(lA.prototype,"geometry"),dI(ve.prototype,"map"),dI(ve.prototype,"bumpMap"),dI(ve.prototype,"alphaMap"),dI(ve.prototype,"normalMap"),dI(ve.prototype,"displacementMap"),dI(ve.prototype,"roughnessMap"),dI(ve.prototype,"metalnessMap"),dI(ve.prototype,"emissiveMap"),dI(ve.prototype,"specularMap"),dI(ve.prototype,"envMap"),dI(ve.prototype,"lightMap"),dI(ve.prototype,"aoMap"),dI(ve.prototype,"gradientMap"));function g6(g){if(jB===!1)return;const A=g[sd];if(A)for(const e of A)Qy(sd,e,g,!1)}jB&&Xw(ve.prototype,"dispose",function(){g6(this)});let Ak=0;function Qy(g,A,e,t){if(Ak>0)return;if(Array.isArray(e)){for(const I of e)Qy(g,A,I,t);return}if(!e)return;let i=e[g];if(i||(i=new Set),t){if(A&&!i.has(A)){i.add(A);let I=e[Hl]||0;I+=1,e[Hl]=I,uB&&console.warn(`๐ข Added user of "${e.type}"`,A,e,I,"users:",i)}}else if(A&&i.has(A)){i.delete(A);let I=e[Hl]||0;I>0&&(I-=1,e[Hl]=I),uB&&console.warn(`๐ด Removed user of "${e.type}"`,A,e,I,"users:",i),I<=0&&(Eh.isLoading(e)||($w&&console.warn(`๐ด Removed all user of "${e.type}"`,e),f_()&&xt(e)))}e[g]=i}try{Xw(LC.prototype,"render",function(){Ak++},function(){Ak--})}catch(g){console.warn("Could not wrap WebGLRenderer.render",g)}var tu=(g=>(g.Added="component-added",g.Removing="removing-component",g))(tu||{});const _v=IA("debugcomponentevents");class iu{static addComponentLifecylceEventListener(A,e){this.eventListeners.has(A)&&this.eventListeners.set(A,[]);let t=this.eventListeners.get(A);t||(t=[]),t.push(e),this.eventListeners.set(A,t),_v&&console.log("Added event listener for "+A,this.eventListeners)}static removeComponentLifecylceEventListener(A,e){const t=this.eventListeners.get(A);if(!t)return;const i=t.indexOf(e);i<0||t.splice(i,1)}static dispatchComponentLifecycleEvent(A,e){const t=this.eventListeners.get(A);if(_v&&console.log("Dispatching event "+A,t),!!t)for(const i of t)i(e)}}r(iu,"eventListeners",new Map);const m_=IA("debugdefines");uc('if(!globalThis[""3.36.
|
|
4344
|
+
`+i.src),A.preventDefault())}})}}const $w=IA("trackresources");function f_(){return $w==="dispose"}let jB=!0;$w===0&&(jB=!1);function A6(g){jB=g}function D_(){return jB}const y_=Symbol("disposable");function XU(g,A){g&&(g[y_]=A,uB&&console.warn("Set disposable",A,g))}const w_=Symbol("disposed");function e6(g){return g[w_]===!0}function xt(g){var A;if(g){if(g[y_]===!1){uB&&console.warn("Object is marked as not disposable",g);return}if(g[w_]=!0,g instanceof rI)xt(g.environment),xt(g.background),xt(g.customDepthMaterial),xt(g.customDistanceMaterial);else if(g instanceof $o)xt(g.geometry),xt(g.material),xt(g.skeleton),xt(g.bindMatrix),xt(g.bindMatrixInverse),xt(g.customDepthMaterial),xt(g.customDistanceMaterial),g.geometry=null,g.material=null;else if(g instanceof lA)xt(g.geometry),xt(g.material),xt(g.customDepthMaterial),xt(g.customDistanceMaterial),g.geometry=null,g.material=null;else if(g instanceof le){OQ(g);for(const e of Object.keys(g.attributes)){const t=g.attributes[e];xt(t)}}else if(g instanceof ie||g instanceof FI)uB&&console.warn("BufferAttribute dispose not supported",g.count);else if(g instanceof Array)for(const e of g)e instanceof ve&&xt(e);else if(g instanceof ve){OQ(g);for(const t of Object.keys(g)){const i=g[t];i instanceof we&&(xt(i),g[t]=null)}const e=g.uniforms;if(e)for(const t of Object.keys(e)){const i=e[t];i instanceof we?(xt(i),e[t]=null):i instanceof wA&&(xt(i.value),i.value=null)}}else g instanceof we?(OQ(g),OQ(g.source),((A=g.source)==null?void 0:A.data)instanceof ImageBitmap&&OQ(g.source.data)):g instanceof lc?(OQ(g.boneTexture),g.boneTexture=null):g instanceof Hd||!(g instanceof pA)&&uB&&console.warn("Unknown object type",g)}}function OQ(g){g&&((uB||f_()||$w)&&console.warn("๐งจ FREE",g),g instanceof ImageBitmap?g.close():g instanceof uC?g.data=null:g.dispose())}function S_(g){(g instanceof lA||g instanceof $o)&&(g.material=null,g.geometry=null)}const t6=new Set;function AS(g,A,e=null,t){if(t||(t=t6,t.clear()),!g)return t;const i=g[sd];if(i)for(const I of i)t.has(I)||(e==null?void 0:e.call(null,I))!==!1&&(t.add(I),A&&AS(I,!0,e,t));return t}function i6(g){return g[Hl]}const uB=IA("debugresourceusers")||IA("debugmemory"),sd=Symbol("needle-resource-users"),Hl=Symbol("needle-resource-users-count");function dI(g,A){Xw(g,A,function(e,t){jB&&(Qy(sd,this,e,!1),Qy(sd,this,t,!0))})}jB&&(dI(lA.prototype,"material"),dI(lA.prototype,"geometry"),dI(ve.prototype,"map"),dI(ve.prototype,"bumpMap"),dI(ve.prototype,"alphaMap"),dI(ve.prototype,"normalMap"),dI(ve.prototype,"displacementMap"),dI(ve.prototype,"roughnessMap"),dI(ve.prototype,"metalnessMap"),dI(ve.prototype,"emissiveMap"),dI(ve.prototype,"specularMap"),dI(ve.prototype,"envMap"),dI(ve.prototype,"lightMap"),dI(ve.prototype,"aoMap"),dI(ve.prototype,"gradientMap"));function g6(g){if(jB===!1)return;const A=g[sd];if(A)for(const e of A)Qy(sd,e,g,!1)}jB&&Xw(ve.prototype,"dispose",function(){g6(this)});let Ak=0;function Qy(g,A,e,t){if(Ak>0)return;if(Array.isArray(e)){for(const I of e)Qy(g,A,I,t);return}if(!e)return;let i=e[g];if(i||(i=new Set),t){if(A&&!i.has(A)){i.add(A);let I=e[Hl]||0;I+=1,e[Hl]=I,uB&&console.warn(`๐ข Added user of "${e.type}"`,A,e,I,"users:",i)}}else if(A&&i.has(A)){i.delete(A);let I=e[Hl]||0;I>0&&(I-=1,e[Hl]=I),uB&&console.warn(`๐ด Removed user of "${e.type}"`,A,e,I,"users:",i),I<=0&&(Eh.isLoading(e)||($w&&console.warn(`๐ด Removed all user of "${e.type}"`,e),f_()&&xt(e)))}e[g]=i}try{Xw(LC.prototype,"render",function(){Ak++},function(){Ak--})}catch(g){console.warn("Could not wrap WebGLRenderer.render",g)}var tu=(g=>(g.Added="component-added",g.Removing="removing-component",g))(tu||{});const _v=IA("debugcomponentevents");class iu{static addComponentLifecylceEventListener(A,e){this.eventListeners.has(A)&&this.eventListeners.set(A,[]);let t=this.eventListeners.get(A);t||(t=[]),t.push(e),this.eventListeners.set(A,t),_v&&console.log("Added event listener for "+A,this.eventListeners)}static removeComponentLifecylceEventListener(A,e){const t=this.eventListeners.get(A);if(!t)return;const i=t.indexOf(e);i<0||t.splice(i,1)}static dispatchComponentLifecycleEvent(A,e){const t=this.eventListeners.get(A);if(_v&&console.log("Dispatching event "+A,t),!!t)for(const i of t)i(e)}}r(iu,"eventListeners",new Map);const m_=IA("debugdefines");uc('if(!globalThis[""3.36.2-beta""]) globalThis[""3.36.2-beta""] = "0.0.0";');uc('if(!globalThis[""undefined""]) globalThis[""undefined""] = "unknown";');uc('if(!globalThis[""Wed Apr 03 2024 13:36:57 GMT+0200 (Central European Summer Time)""]) globalThis[""Wed Apr 03 2024 13:36:57 GMT+0200 (Central European Summer Time)""] = "unknown";');uc('globalThis["__NEEDLE_ENGINE_VERSION__"] = "3.36.2-beta";');uc('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');uc('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Apr 03 2024 13:36:57 GMT+0200 (Central European Summer Time)";');const hn="3.36.2-beta",eS="undefined",$U="Wed Apr 03 2024 13:36:57 GMT+0200 (Central European Summer Time)";m_&&console.log(`Engine version: ${hn} (generator: ${eS})
|
|
4345
4345
|
Project built at ${$U}`);const mC="needle_isActiveInHierarchy",tB="builtin_components",ch="needle_editor_guid";function uc(g){try{(0,eval)(g)}catch(A){m_&&console.error(A)}}const nd=Symbol("NEEDLE_NEED_UPDATE_INSTANCE"),M_=Symbol("isUsingInstancing"),G_=Symbol("instancingRenderer"),Ol=Symbol("instancingAutoUpdateBounds");class As{static isUsingInstancing(A){return A[M_]===!0}static getRenderer(A){return A[G_]||null}setAutoUpdateBounds(A,e){const t=As.getRenderer(A);t&&(t[Ol]=e)}static markDirty(A,e=!0){if(A&&(this.isUsingInstancing(A)&&(A[nd]=!0,A.matrixWorldNeedsUpdate=!0),e))for(const t of A.children)As.markDirty(t,!0)}}function pB(g,A){try{A?g(A):g()}catch(e){return console.error(e),!1}return!0}const ek=IA("debugnewscripts"),I6=IA("debughierarchy"),ti=[];function o6(){return ti.length>0}function Ey(g){if(!(g.new_scripts.length<=0)){if(ek&&console.log("Register new components",g.new_scripts.length,[...g.new_scripts],g.alias?"element: "+g.alias:g.hash,g),g.new_scripts_pre_setup_callbacks.length>0){for(const A of g.new_scripts_pre_setup_callbacks)A&&A();g.new_scripts_pre_setup_callbacks.length=0}ti.length=0,g.new_scripts.length>0&&ti.push(...g.new_scripts),g.new_scripts.length=0;for(let A=0;A<ti.length;A++)try{const e=ti[A];if(e.isComponent!==!0){(pe()||ek)&&console.error(`Registered script is not a Needle Engine component.
|
|
4346
4346
|
The script will be ignored. Please make sure your component extends "Behaviour" imported from "@needle-tools/engine"
|
|
4347
4347
|
`,e),ti.splice(A,1),A--;continue}if(e.destroyed)continue;if(!e.gameObject){console.error("MISSING GAMEOBJECT - will ignore",e),ti.splice(A,1),A--;continue}e.context=g,lh(e.gameObject),AN(e,g)}catch(e){console.error(e),EC(ti[A],g),ti.splice(A,1),A--}for(let A=0;A<ti.length;A++)try{const e=ti[A];if(e.destroyed){EC(ti[A],g),ti.splice(A,1),A--;continue}if(e.registering)try{e.registering()}catch(t){console.error(t)}e.__internalAwake!==void 0&&(e.gameObject||console.error("MISSING GAMEOBJECT",e,e.gameObject),lh(e.gameObject),e.activeAndEnabled&&pB(e.__internalAwake.bind(e)))}catch(e){console.error(e),EC(ti[A],g),ti.splice(A,1),A--}for(let A=0;A<ti.length;A++)try{const e=ti[A];if(e.destroyed||e.enabled===!1||(lh(e.gameObject),e.activeAndEnabled===!1))continue;e.__internalEnable!==void 0&&(e.enabled=!0,pB(e.__internalEnable.bind(e)))}catch(e){console.error(e),EC(ti[A],g),ti.splice(A,1),A--}for(let A=0;A<ti.length;A++)try{const e=ti[A];if(e.destroyed||!e.gameObject)continue;g.new_script_start.push(e)}catch(e){console.error(e),EC(ti[A],g),ti.splice(A,1),A--}ti.length=0;for(const A of g.new_scripts_post_setup_callbacks)A&&A();g.new_scripts_post_setup_callbacks.length=0}}function s6(g){g&&(g.__internalDisable(!0),EC(g,g.context))}function k_(g,A){for(let e=0;e<g.new_script_start.length;e++)try{const t=g.new_script_start[e];if(A!==void 0&&t.gameObject!==A||t.destroyed||t.activeAndEnabled===!1)continue;pB(t.__internalAwake.bind(t)),t.enabled&&(pB(t.__internalEnable.bind(t)),pB(t.__internalStart.bind(t)),g.new_script_start.splice(e,1),e--)}catch(t){console.error(t),EC(g.new_script_start[e],g),g.new_script_start.splice(e,1),e--}}function AN(g,A){A.scripts.indexOf(g)===-1&&(A.scripts.push(g),g.earlyUpdate&&A.scripts_earlyUpdate.push(g),g.update&&A.scripts_update.push(g),g.lateUpdate&&A.scripts_lateUpdate.push(g),g.onBeforeRender&&A.scripts_onBeforeRender.push(g),g.onAfterRender&&A.scripts_onAfterRender.push(g),g.onPausedChanged&&A.scripts_pausedChanged.push(g),km(g,null)&&A.new_scripts_xr.push(g),km(g,"immersive-vr")&&A.scripts_immersive_vr.push(g),km(g,"immersive-ar")&&A.scripts_immersive_ar.push(g))}function EC(g,A){qo(g,A.new_scripts),qo(g,A.new_script_start),qo(g,A.scripts),qo(g,A.scripts_earlyUpdate),qo(g,A.scripts_update),qo(g,A.scripts_lateUpdate),qo(g,A.scripts_onBeforeRender),qo(g,A.scripts_onAfterRender),qo(g,A.scripts_pausedChanged),qo(g,A.new_scripts_xr),qo(g,A.scripts_immersive_vr),qo(g,A.scripts_immersive_ar),A.stopAllCoroutinesFrom(g)}function qo(g,A){const e=A.indexOf(g);e>=0&&A.splice(e,1)}function km(g,A){var e;if(g){const t=g;if(t.onBeforeXR||t.onEnterXR||t.onUpdateXR||t.onLeaveXR||t.onXRControllerAdded||t.onXRControllerRemoved)return!(A!=null&&((e=t.supportsXR)==null?void 0:e.call(t,A))===!1)}return!1}function BD(g){if(g||(g=nt.Current.scene),!g){console.trace("Invalid call - no current context.");return}const A=Dc(g);R_(g,A,!0)||(ek||pe()?console.error(`Error updating hierarchy
|
|
@@ -6213,7 +6213,7 @@ Texture:`,t),this.setLightmapDebugMaterial()),this.applyLightmap())}updateLightm
|
|
|
6213
6213
|
gl_FragColor = lightMapTexel;
|
|
6214
6214
|
gl_FragColor.a = 1.;
|
|
6215
6215
|
}
|
|
6216
|
-
`,defines:{USE_LIGHTMAP:""}})}}var boA=Object.defineProperty,LoA=Object.getOwnPropertyDescriptor,HC=(g,A,e,t)=>{for(var i=t>1?void 0:t?LoA(A,e):A,I=g.length-1,o;I>=0;I--)(o=g[I])&&(i=(t?o(A,e,i):o(i))||i);return t&&i&&boA(A,e,i),i};const eh=IA("debugrenderer"),xoA=IA("debugskinnedmesh"),jb=IA("noinstancing"),Hr=IA("debugprogressive"),zb=IA("noprogressive"),YoA=IA("wireframe");class oF{constructor(){r(this,"path",null);r(this,"asset",null);r(this,"default")}}class ToA{constructor(A,e){r(this,"_renderer");r(this,"_targets",[]);r(this,"_indexMapMaxIndex");r(this,"_indexMap");r(this,"_changed",!1);this._renderer=A;const t=this.setMaterial.bind(this),i=this.getMaterial.bind(this),I=A.gameObject;if(this._targets=[],I)switch(I.type){case"Group":this._targets=[...I.children];break;case"SkinnedMesh":case"Mesh":this._targets.push(I);break}let o=!1,s,n=0;for(let C=0;C<this._targets.length;C++){const a=this._targets[C];if(!a)continue;const B=a.material;if(B){B.shadowSide=B.side;for(let Q=0;Q<e.length;Q++){const E=e[Q];if(!E){o=!0;continue}if(B.name===E.name){s===void 0&&(s=new Map),s.set(Q,C),n=Math.max(n,Q);break}}}}if(o){this._indexMapMaxIndex=n,this._indexMap=s;const C=`Renderer ${A.name} was initialized with missing materials - this may lead to unexpected behaviour when trying to access sharedMaterials by index.`;console.warn(C),XI()&&si("Found renderer with missing materials: please check the console for details.")}return new Proxy(this,{get(C,a){if(typeof a=="string"){const B=parseInt(a);if(!isNaN(B))return i(B)}return C[a]},set(C,a,B){return typeof a=="string"&&t(B,Number.parseInt(a)),Reflect.set(C,a,B)?(B instanceof ve&&(C.changed=!0),!0):!1}})}get changed(){return this._changed}set changed(A){A===!0&&eh&&console.warn("SharedMaterials have changed: "+this._renderer.name,this),this._changed=A}is(A){return this._renderer===A}get length(){return this._indexMapMaxIndex!==void 0?this._indexMapMaxIndex+1:this._targets.length}*[Symbol.iterator](){for(let A=0;A<this.length;A++)yield this.getMaterial(A)}resolveIndex(A){const e=this._indexMap;return e&&e.has(A)?e.get(A):A}setMaterial(A,e){if(e=this.resolveIndex(e),e<0||e>=this._targets.length)return;const t=this._targets[e];!t||t.material===void 0||(t.material=A,this.changed=!0)}getMaterial(A){if(A=this.resolveIndex(A),A<0)return null;const e=this._targets;if(A>=e.length)return null;const t=e[A];return t?t.material:null}}var $M;const th=($M=class extends UA{constructor(){super(...arguments);r(this,"receiveShadows",!1);r(this,"shadowCastingMode",0);r(this,"lightmapIndex",-1);r(this,"lightmapScaleOffset",new Ae(1,1,0,0));r(this,"enableInstancing");r(this,"renderOrder");r(this,"allowOcclusionWhenDynamic",!0);r(this,"probeAnchor");r(this,"reflectionProbeUsage",0);r(this,"_lightmaps");r(this,"_sharedMeshes",[]);r(this,"_sharedMaterials");r(this,"_originalMaterials");r(this,"_lightmapTextureOverride");r(this,"allowProgressiveLoading",!0);r(this,"_firstFrame",-1);r(this,"_isInstancingEnabled",!1);r(this,"handles");r(this,"_wasVisible",!1);r(this,"onBeforeRenderThree",(A,e,t,i,I,o)=>{var s;if(!this._wasVisible&&this.context.time.frame>this._firstFrame+1&&(Hr&&console.debug("onBeforeRenderThree: Object becomes visible for the first time",this.name,this.context.time.frame),this._wasVisible=!0),I.envMapIntensity!==void 0){const n=this.hasLightmap?Math.PI:1,C=((s=this.context.mainCameraComponent)==null?void 0:s.environmentIntensity)??1;I.envMapIntensity=Math.max(0,C*this.context.sceneLighting.environmentIntensity/n)}if(this._lightmaps)for(const n of this._lightmaps)n.updateLightmapUniforms(I)});r(this,"automaticallyUpdateLODLevel",!0);r(this,"hasTextureLODs",!0);r(this,"hasMeshLODs",!0);r(this,"_lastLodLevel",-1);r(this,"_nextLodTestTime",0);r(this,"_randomLodLevelCheckFrameOffset",Math.floor(Math.random()*100));r(this,"_sphere",new Fi);r(this,"_box",new Mt);r(this,"_reflectionProbe",null)}static setInstanced(A,e){const t=ru(A,th);return t.setInstancingEnabled(e),t}static isInstanced(A){const e=VB(A,th);return e?e.isInstancingActive:As.isUsingInstancing(A)}static setVisible(A,e){CE(A,e)}get sharedMesh(){if(this.gameObject.type==="Mesh")return this.gameObject;if(this.gameObject.type==="SkinnesMesh")return this.gameObject;if(this.gameObject.type==="Group")return this.gameObject.children[0]}get sharedMeshes(){if(this.destroyed||!this.gameObject)return this._sharedMeshes;if(this._sharedMeshes.length=0,this.gameObject.type==="Group")for(const A of this.gameObject.children)(A.type==="Mesh"||A.type==="SkinnedMesh")&&this._sharedMeshes.push(A);else(this.gameObject.type==="Mesh"||this.gameObject.type==="SkinnedMesh")&&this._sharedMeshes.push(this.gameObject);return this._sharedMeshes}get sharedMaterial(){return this.sharedMaterials[0]}set sharedMaterial(A){this.sharedMaterials[0]!==A&&(this.sharedMaterials[0]=A,this.applyLightmapping())}get material(){return this.sharedMaterials[0]}set material(A){this.sharedMaterial=A}set sharedMaterials(A){if(!this._originalMaterials)this._originalMaterials=A;else if(A){let e=!1;for(let t=0;t<this._sharedMaterials.length;t++){const i=t<A.length?A[t]:null;i&&i instanceof ve?this.sharedMaterials[t]=i:e||(e=!0,console.warn("Can not assign null as material: "+this.name,i))}}}get sharedMaterials(){return(!this._sharedMaterials||!this._sharedMaterials.is(this))&&(this._originalMaterials||(this._originalMaterials=[]),this._sharedMaterials=new ToA(this,this._originalMaterials)),this._sharedMaterials}static get shouldSuppressInstancing(){return jb}get lightmap(){var A;return(A=this._lightmaps)!=null&&A.length?this._lightmaps[0].lightmap:null}set lightmap(A){var e;if(this._lightmapTextureOverride=A,A===void 0&&(A=this.context.lightmaps.tryGetLightmap(this.sourceId,this.lightmapIndex)),(e=this._lightmaps)!=null&&e.length)for(const t of this._lightmaps)t.lightmap=A}get hasLightmap(){const A=this.lightmap;return A!=null}registering(){this.enabled||this.setVisibility(!1)}awake(){if(this._firstFrame=this.context.time.frame,eh&&console.log("Renderer ",this.name,this),this.clearInstancingState(),this.probeAnchor&&eh&&this.probeAnchor.add(new ts(.2)),this._reflectionProbe=null,this.isMultiMaterialObject(this.gameObject)){for(const A of this.gameObject.children)this.context.addBeforeRenderListener(A,this.onBeforeRenderThree),A.layers.mask=this.gameObject.layers.mask;if(this.renderOrder!==void 0){let A=0;for(let e=0;e<this.gameObject.children.length;e++){const t=this.gameObject.children[e];if(!(!this.isMeshOrSkinnedMesh(t)||nA.getComponent(t,th))){if(this.renderOrder.length<=A){console.warn("Incorrect renderOrder element count",this,this.renderOrder.length+" but expected "+this.gameObject.children.length,"Index: "+A,"ChildElement:",t);continue}t.renderOrder=this.renderOrder[A],A+=1}}}}else this.isMeshOrSkinnedMesh(this.gameObject)?(this.context.addBeforeRenderListener(this.gameObject,this.onBeforeRenderThree),this.renderOrder!==void 0&&this.renderOrder.length>0&&(this.gameObject.renderOrder=this.renderOrder[0])):this.context.addBeforeRenderListener(this.gameObject,this.onBeforeRenderThree);if(this.applyLightmapping(),YoA)for(let A=0;A<this.sharedMaterials.length;A++){const e=this.sharedMaterials[A];e&&(e.wireframe=!0)}}applyLightmapping(){var A;if(this.lightmapIndex>=0){const e=this.gameObject.type,t=this._lightmapTextureOverride!==void 0?this._lightmapTextureOverride:this.context.lightmaps.tryGetLightmap(this.sourceId,this.lightmapIndex);if(t){if(this._lightmaps||(this._lightmaps=[]),e==="Mesh"){const i=this.gameObject.material;if(i!=null&&i.isMeshBasicMaterial)i&&console.warn("Lightmapping is not supported on MeshBasicMaterial",i.name);else{if(this._lightmaps.length<=0){const o=new pd(this.gameObject,this.context);this._lightmaps.push(o)}this._lightmaps[0].init(this.lightmapIndex,this.lightmapScaleOffset,t)}}else if(this.isMultiMaterialObject(this.gameObject)&&this.sharedMaterials.length>0)for(let i=0;i<this.gameObject.children.length;i++){const I=this.gameObject.children[i];if(!((A=I.material)!=null&&A.isMeshBasicMaterial)){let o;i>=this._lightmaps.length?(o=new pd(I,this.context),this._lightmaps.push(o)):o=this._lightmaps[i],o.init(this.lightmapIndex,this.lightmapScaleOffset,t)}}}else eh&&console.warn("Lightmap not found",this.sourceId,this.lightmapIndex)}}get isInstancingActive(){return this.handles!=null&&this.handles.length>0&&this._isInstancingEnabled}setInstancingEnabled(A){if(this._isInstancingEnabled===A)return A&&(this.handles===void 0||this.handles!=null&&this.handles.length>0);if(this._isInstancingEnabled=A,A){if(this.enableInstancing===void 0&&(this.enableInstancing=!0),this.handles===void 0){if(this.handles=SB.instance.setup(this,this.gameObject,this.context,null,{rend:this,foundMeshes:0,useMatrixWorldAutoUpdate:this.useInstanceMatrixWorldAutoUpdate()}),this.handles)return nA.markAsInstancedRendered(this.gameObject,!0),!0}else if(this.handles!==null){for(const e of this.handles)e.updateInstanceMatrix(!0),e.add();return nA.markAsInstancedRendered(this.gameObject,!0),!0}}else{if(this.handles)for(const e of this.handles)e.remove(this.destroyed);return!0}return!1}clearInstancingState(){this._isInstancingEnabled=!1,this.handles=void 0}useInstanceMatrixWorldAutoUpdate(){return!0}start(){if(this.enableInstancing&&!jb&&(this.setInstancingEnabled(!0),As.markDirty(this.gameObject)),this.gameObject.frustumCulled=this.allowOcclusionWhenDynamic,this.isMultiMaterialObject(this.gameObject))for(let A=0;A<this.gameObject.children.length;A++){const e=this.gameObject.children[A];e.frustumCulled=this.allowOcclusionWhenDynamic}}onEnable(){this.sharedMeshes,this.setVisibility(!0),this._isInstancingEnabled||this.enableInstancing?this.__internalDidAwakeAndStart&&this.setInstancingEnabled(!0):this.enabled&&this.applyStencil(),this.updateReflectionProbe(),this.testIfLODLevelsAreAvailable()}onDisable(){this.setVisibility(!1),this.handles&&this.handles.length>0&&this.setInstancingEnabled(!1)}onDestroy(){if(this.handles=null,this.isMultiMaterialObject(this.gameObject))for(const A of this.gameObject.children)this.context.removeBeforeRenderListener(A,this.onBeforeRenderThree);else this.context.removeBeforeRenderListener(this.gameObject,this.onBeforeRenderThree)}onBeforeRender(){var A,e;if(this.gameObject){if(eh==this.name&&this.gameObject instanceof lA){this.gameObject.geometry.computeBoundingSphere();const t=li(this.gameObject.geometry.boundingSphere.center).applyMatrix4(this.gameObject.matrixWorld);me.DrawWireSphere(t,this.gameObject.geometry.boundingSphere.radius,56831)}if(this.isMultiMaterialObject(this.gameObject)&&((A=this.gameObject.children)==null?void 0:A.length)>0)for(const t of this.gameObject.children)this.applySettings(t);else this.applySettings(this.gameObject);if(this.sharedMaterials.changed&&(this.sharedMaterials.changed=!1,this.applyLightmapping()),(e=this.handles)!=null&&e.length&&this.gameObject[nd]===!0){this.gameObject[nd]=!1;for(let i=this.handles.length-1;i>=0;i--)this.handles[i].updateInstanceMatrix();this.gameObject.matrixWorldNeedsUpdate=!1}if(this.handles&&this.handles.length<=0&&nA.markAsInstancedRendered(this.gameObject,!1),this._isInstancingEnabled&&this.handles)for(let t=0;t<this.handles.length;t++){const i=this.handles[t];CE(i.object,!1)}this._wasVisible&&this.allowProgressiveLoading&&this.automaticallyUpdateLODLevel&&this.updateLODs(),this.reflectionProbeUsage!==0&&this._reflectionProbe&&this._reflectionProbe.onSet(this)}}onAfterRender(){if(this._isInstancingEnabled&&this.handles)for(let A=0;A<this.handles.length;A++){const e=this.handles[A];this._wasVisible=!0,CE(e.object,!0)}this.reflectionProbeUsage!==0&&this._reflectionProbe&&this._reflectionProbe.onUnset(this),Hr&&this._lastLodLevel>=0&&this.drawGizmoLodLevel(!1)}testIfLODLevelsAreAvailable(){this.automaticallyUpdateLODLevel=!1,this.hasMeshLODs=!1,this.hasTextureLODs=!1;for(const A of this.sharedMeshes)if(Lt.hasLODLevelAvailable(A)){this.automaticallyUpdateLODLevel=!0,this.hasMeshLODs=!0;break}for(const A of this.sharedMaterials)if(A&&Lt.hasLODLevelAvailable(A)){this.automaticallyUpdateLODLevel=!0,this.hasTextureLODs=!0;break}Hr&&console.log(`${this.name}
|
|
6216
|
+
`,defines:{USE_LIGHTMAP:""}})}}var boA=Object.defineProperty,LoA=Object.getOwnPropertyDescriptor,HC=(g,A,e,t)=>{for(var i=t>1?void 0:t?LoA(A,e):A,I=g.length-1,o;I>=0;I--)(o=g[I])&&(i=(t?o(A,e,i):o(i))||i);return t&&i&&boA(A,e,i),i};const eh=IA("debugrenderer"),xoA=IA("debugskinnedmesh"),jb=IA("noinstancing"),Hr=IA("debugprogressive"),zb=IA("noprogressive"),YoA=IA("wireframe");class oF{constructor(){r(this,"path",null);r(this,"asset",null);r(this,"default")}}class ToA{constructor(A,e){r(this,"_renderer");r(this,"_targets",[]);r(this,"_indexMapMaxIndex");r(this,"_indexMap");r(this,"_changed",!1);this._renderer=A;const t=this.setMaterial.bind(this),i=this.getMaterial.bind(this),I=A.gameObject;if(this._targets=[],I)switch(I.type){case"Group":this._targets=[...I.children];break;case"SkinnedMesh":case"Mesh":this._targets.push(I);break}let o=!1,s,n=0;for(let C=0;C<this._targets.length;C++){const a=this._targets[C];if(!a)continue;const B=a.material;if(B){B.shadowSide=B.side;for(let Q=0;Q<e.length;Q++){const E=e[Q];if(!E){o=!0;continue}if(B.name===E.name){s===void 0&&(s=new Map),s.set(Q,C),n=Math.max(n,Q);break}}}}if(o){this._indexMapMaxIndex=n,this._indexMap=s;const C=`Renderer ${A.name} was initialized with missing materials - this may lead to unexpected behaviour when trying to access sharedMaterials by index.`;console.warn(C),XI()&&si("Found renderer with missing materials: please check the console for details.")}return new Proxy(this,{get(C,a){if(typeof a=="string"){const B=parseInt(a);if(!isNaN(B))return i(B)}return C[a]},set(C,a,B){return typeof a=="string"&&t(B,Number.parseInt(a)),Reflect.set(C,a,B)?(B instanceof ve&&(C.changed=!0),!0):!1}})}get changed(){return this._changed}set changed(A){A===!0&&eh&&console.warn("SharedMaterials have changed: "+this._renderer.name,this),this._changed=A}is(A){return this._renderer===A}get length(){return this._indexMapMaxIndex!==void 0?this._indexMapMaxIndex+1:this._targets.length}*[Symbol.iterator](){for(let A=0;A<this.length;A++)yield this.getMaterial(A)}resolveIndex(A){const e=this._indexMap;return e&&e.has(A)?e.get(A):A}setMaterial(A,e){if(e=this.resolveIndex(e),e<0||e>=this._targets.length)return;const t=this._targets[e];!t||t.material===void 0||(t.material=A,this.changed=!0)}getMaterial(A){if(A=this.resolveIndex(A),A<0)return null;const e=this._targets;if(A>=e.length)return null;const t=e[A];return t?t.material:null}}var $M;const th=($M=class extends UA{constructor(){super(...arguments);r(this,"receiveShadows",!1);r(this,"shadowCastingMode",0);r(this,"lightmapIndex",-1);r(this,"lightmapScaleOffset",new Ae(1,1,0,0));r(this,"enableInstancing");r(this,"renderOrder");r(this,"allowOcclusionWhenDynamic",!0);r(this,"probeAnchor");r(this,"reflectionProbeUsage",0);r(this,"_lightmaps");r(this,"_sharedMeshes",[]);r(this,"_sharedMaterials");r(this,"_originalMaterials");r(this,"_lightmapTextureOverride");r(this,"allowProgressiveLoading",!0);r(this,"_firstFrame",-1);r(this,"_isInstancingEnabled",!1);r(this,"handles");r(this,"_wasVisible",!1);r(this,"onBeforeRenderThree",(A,e,t,i,I,o)=>{var s;if(!this._wasVisible&&this.context.time.frame>this._firstFrame+1&&(Hr&&console.debug("onBeforeRenderThree: Object becomes visible for the first time",this.name,this.context.time.frame),this._wasVisible=!0),I.envMapIntensity!==void 0){const n=this.hasLightmap?Math.PI:1,C=((s=this.context.mainCameraComponent)==null?void 0:s.environmentIntensity)??1;I.envMapIntensity=Math.max(0,C*this.context.sceneLighting.environmentIntensity/n)}if(this._lightmaps)for(const n of this._lightmaps)n.updateLightmapUniforms(I)});r(this,"automaticallyUpdateLODLevel",!0);r(this,"hasTextureLODs",!0);r(this,"hasMeshLODs",!0);r(this,"_lastLodLevel",-1);r(this,"_nextLodTestTime",0);r(this,"_randomLodLevelCheckFrameOffset",Math.floor(Math.random()*100));r(this,"_sphere",new Fi);r(this,"_box",new Mt);r(this,"_reflectionProbe",null)}static setInstanced(A,e){const t=ru(A,th);return t.setInstancingEnabled(e),t}static isInstanced(A){const e=VB(A,th);return e?e.isInstancingActive:As.isUsingInstancing(A)}static setVisible(A,e){CE(A,e)}get sharedMesh(){if(this.gameObject.type==="Mesh")return this.gameObject;if(this.gameObject.type==="SkinnesMesh")return this.gameObject;if(this.gameObject.type==="Group")return this.gameObject.children[0]}get sharedMeshes(){if(this.destroyed||!this.gameObject)return this._sharedMeshes;if(this._sharedMeshes.length=0,this.gameObject.type==="Group")for(const A of this.gameObject.children)(A.type==="Mesh"||A.type==="SkinnedMesh")&&this._sharedMeshes.push(A);else(this.gameObject.type==="Mesh"||this.gameObject.type==="SkinnedMesh")&&this._sharedMeshes.push(this.gameObject);return this._sharedMeshes}get sharedMaterial(){return this.sharedMaterials[0]}set sharedMaterial(A){this.sharedMaterials[0]!==A&&(this.sharedMaterials[0]=A,this.applyLightmapping())}get material(){return this.sharedMaterials[0]}set material(A){this.sharedMaterial=A}set sharedMaterials(A){if(!this._originalMaterials)this._originalMaterials=A;else if(A){let e=!1;for(let t=0;t<this._sharedMaterials.length;t++){const i=t<A.length?A[t]:null;i&&i instanceof ve?this.sharedMaterials[t]=i:e||(e=!0,console.warn("Can not assign null as material: "+this.name,i))}}}get sharedMaterials(){return(!this._sharedMaterials||!this._sharedMaterials.is(this))&&(this._originalMaterials||(this._originalMaterials=[]),this._sharedMaterials=new ToA(this,this._originalMaterials)),this._sharedMaterials}static get shouldSuppressInstancing(){return jb}get lightmap(){var A;return(A=this._lightmaps)!=null&&A.length?this._lightmaps[0].lightmap:null}set lightmap(A){var e;if(this._lightmapTextureOverride=A,A===void 0&&(A=this.context.lightmaps.tryGetLightmap(this.sourceId,this.lightmapIndex)),(e=this._lightmaps)!=null&&e.length)for(const t of this._lightmaps)t.lightmap=A}get hasLightmap(){const A=this.lightmap;return A!=null}registering(){this.enabled||this.setVisibility(!1)}awake(){if(this._firstFrame=this.context.time.frame,eh&&console.log("Renderer ",this.name,this),this.clearInstancingState(),this.probeAnchor&&eh&&this.probeAnchor.add(new ts(.2)),this._reflectionProbe=null,this.isMultiMaterialObject(this.gameObject)){for(const A of this.gameObject.children)this.context.addBeforeRenderListener(A,this.onBeforeRenderThree),A.layers.mask=this.gameObject.layers.mask;if(this.renderOrder!==void 0){let A=0;for(let e=0;e<this.gameObject.children.length;e++){const t=this.gameObject.children[e];if(!(!this.isMeshOrSkinnedMesh(t)||nA.getComponent(t,th))){if(this.renderOrder.length<=A){console.warn("Incorrect renderOrder element count",this,this.renderOrder.length+" but expected "+this.gameObject.children.length,"Index: "+A,"ChildElement:",t);continue}t.renderOrder=this.renderOrder[A],A+=1}}}}else this.isMeshOrSkinnedMesh(this.gameObject)?(this.context.addBeforeRenderListener(this.gameObject,this.onBeforeRenderThree),this.renderOrder!==void 0&&this.renderOrder.length>0&&(this.gameObject.renderOrder=this.renderOrder[0])):this.context.addBeforeRenderListener(this.gameObject,this.onBeforeRenderThree);if(this.applyLightmapping(),YoA)for(let A=0;A<this.sharedMaterials.length;A++){const e=this.sharedMaterials[A];e&&(e.wireframe=!0)}}applyLightmapping(){var A;if(this.lightmapIndex>=0){const e=this.gameObject.type,t=this._lightmapTextureOverride!==void 0?this._lightmapTextureOverride:this.context.lightmaps.tryGetLightmap(this.sourceId,this.lightmapIndex);if(t){if(this._lightmaps||(this._lightmaps=[]),e==="Mesh"){const i=this.gameObject.material;if(i!=null&&i.isMeshBasicMaterial)i&&console.warn("Lightmapping is not supported on MeshBasicMaterial",i.name);else{if(this._lightmaps.length<=0){const o=new pd(this.gameObject,this.context);this._lightmaps.push(o)}this._lightmaps[0].init(this.lightmapIndex,this.lightmapScaleOffset,t)}}else if(this.isMultiMaterialObject(this.gameObject)&&this.sharedMaterials.length>0)for(let i=0;i<this.gameObject.children.length;i++){const I=this.gameObject.children[i];if(!((A=I.material)!=null&&A.isMeshBasicMaterial)){let o;i>=this._lightmaps.length?(o=new pd(I,this.context),this._lightmaps.push(o)):o=this._lightmaps[i],o.init(this.lightmapIndex,this.lightmapScaleOffset,t)}}}else eh&&console.warn("Lightmap not found",this.sourceId,this.lightmapIndex)}}get isInstancingActive(){return this.handles!=null&&this.handles.length>0&&this._isInstancingEnabled}setInstancingEnabled(A){if(this._isInstancingEnabled===A)return A&&(this.handles===void 0||this.handles!=null&&this.handles.length>0);if(this._isInstancingEnabled=A,A){if(this.enableInstancing===void 0&&(this.enableInstancing=!0),this.handles===void 0){if(this.handles=SB.instance.setup(this,this.gameObject,this.context,null,{rend:this,foundMeshes:0,useMatrixWorldAutoUpdate:this.useInstanceMatrixWorldAutoUpdate()}),this.handles)return nA.markAsInstancedRendered(this.gameObject,!0),!0}else if(this.handles!==null){for(const e of this.handles)e.updateInstanceMatrix(!0),e.add();return nA.markAsInstancedRendered(this.gameObject,!0),!0}}else{if(this.handles)for(const e of this.handles)e.remove(this.destroyed);return!0}return!1}clearInstancingState(){this._isInstancingEnabled=!1,this.handles=void 0}useInstanceMatrixWorldAutoUpdate(){return!0}start(){if(this.enableInstancing&&!jb&&(this.setInstancingEnabled(!0),As.markDirty(this.gameObject)),this.gameObject.frustumCulled=this.allowOcclusionWhenDynamic,this.isMultiMaterialObject(this.gameObject))for(let A=0;A<this.gameObject.children.length;A++){const e=this.gameObject.children[A];e.frustumCulled=this.allowOcclusionWhenDynamic}}onEnable(){this.sharedMeshes,this.setVisibility(!0),this._isInstancingEnabled||this.enableInstancing==!0||Array.isArray(this.enableInstancing)&&this.enableInstancing.some(e=>e)?this.__internalDidAwakeAndStart&&this.setInstancingEnabled(!0):this.enabled&&this.applyStencil(),this.updateReflectionProbe(),this.testIfLODLevelsAreAvailable()}onDisable(){this.setVisibility(!1),this.handles&&this.handles.length>0&&this.setInstancingEnabled(!1)}onDestroy(){if(this.handles=null,this.isMultiMaterialObject(this.gameObject))for(const A of this.gameObject.children)this.context.removeBeforeRenderListener(A,this.onBeforeRenderThree);else this.context.removeBeforeRenderListener(this.gameObject,this.onBeforeRenderThree)}onBeforeRender(){var A,e;if(this.gameObject){if(eh==this.name&&this.gameObject instanceof lA){this.gameObject.geometry.computeBoundingSphere();const t=li(this.gameObject.geometry.boundingSphere.center).applyMatrix4(this.gameObject.matrixWorld);me.DrawWireSphere(t,this.gameObject.geometry.boundingSphere.radius,56831)}if(this.isMultiMaterialObject(this.gameObject)&&((A=this.gameObject.children)==null?void 0:A.length)>0)for(const t of this.gameObject.children)this.applySettings(t);else this.applySettings(this.gameObject);if(this.sharedMaterials.changed&&(this.sharedMaterials.changed=!1,this.applyLightmapping()),(e=this.handles)!=null&&e.length&&this.gameObject[nd]===!0){this.gameObject[nd]=!1;for(let i=this.handles.length-1;i>=0;i--)this.handles[i].updateInstanceMatrix();this.gameObject.matrixWorldNeedsUpdate=!1}if(this.handles&&this.handles.length<=0&&nA.markAsInstancedRendered(this.gameObject,!1),this._isInstancingEnabled&&this.handles)for(let t=0;t<this.handles.length;t++){const i=this.handles[t];CE(i.object,!1)}this._wasVisible&&this.allowProgressiveLoading&&this.automaticallyUpdateLODLevel&&this.updateLODs(),this.reflectionProbeUsage!==0&&this._reflectionProbe&&this._reflectionProbe.onSet(this)}}onAfterRender(){if(this._isInstancingEnabled&&this.handles)for(let A=0;A<this.handles.length;A++){const e=this.handles[A];this._wasVisible=!0,CE(e.object,!0)}this.reflectionProbeUsage!==0&&this._reflectionProbe&&this._reflectionProbe.onUnset(this),Hr&&this._lastLodLevel>=0&&this.drawGizmoLodLevel(!1)}testIfLODLevelsAreAvailable(){this.automaticallyUpdateLODLevel=!1,this.hasMeshLODs=!1,this.hasTextureLODs=!1;for(const A of this.sharedMeshes)if(Lt.hasLODLevelAvailable(A)){this.automaticallyUpdateLODLevel=!0,this.hasMeshLODs=!0;break}for(const A of this.sharedMaterials)if(A&&Lt.hasLODLevelAvailable(A)){this.automaticallyUpdateLODLevel=!0,this.hasTextureLODs=!0;break}Hr&&console.log(`${this.name}
|
|
6217
6217
|
Mesh LODs available? ${this.hasMeshLODs?"YES":"NO"}
|
|
6218
6218
|
Texture LODs available? ${this.hasTextureLODs?"YES":"NO"}`)}updateLODs(){let A=0;this.hasMeshLODs&&(A=this.calculateLodLevel());const e=0;for(const t of this.sharedMaterials)t&&this.loadProgressiveTextures(t,e);if(A>=0)for(let t=0;t<this.sharedMeshes.length;t++){const i=this.sharedMeshes[t];i&&this.loadProgressiveMeshes(i,A)}}calculateLodLevel(A=!1){var I;if(!A&&(this.context.time.frame+this._randomLodLevelCheckFrameOffset)%3!=0)return this._lastLodLevel;if(this.context.time.realtimeSinceStartup<this._nextLodTestTime)return this._lastLodLevel;const t=10;let i=t+1;if(this.context.mainCamera){const s=Ts()?.6:.4;for(const n of this.sharedMeshes){if(i<=0)break;if(!n)continue;if(Hr&&n["DEBUG:LOD"]!=null)return this._lastLodLevel=n["DEBUG:LOD"];let C=0;const a=Lt.getMeshLODInformation(n.geometry);(a==null?void 0:a.density)!=null&&(C=Math.log2(a.density||0)/2-6);const B=(I=this.context.mainCameraComponent)==null?void 0:I.getFrustum();if(!(B!=null&&B.intersectsObject(n))){if(Hr&&n.geometry.boundingSphere){const E=n.geometry.boundingSphere;this._sphere.copy(E),this._sphere.applyMatrix4(n.matrixWorld),me.DrawWireSphere(this._sphere.center,this._sphere.radius*1.01,16733525,.5)}continue}const Q=n.geometry.boundingBox;if(Q&&this.context.mainCamera instanceof Te){if(n.geometry.attributes.color&&n.geometry.attributes.color.count<100&&n.geometry.boundingSphere&&(this._sphere.copy(n.geometry.boundingSphere),this._sphere.applyMatrix4(n.matrixWorld),this._sphere.containsPoint(qe(this.context.mainCamera)))){i=0;break}this._box.copy(Q),this._box.applyMatrix4(n.matrixWorld),this._box.applyMatrix4(this.context.mainCameraComponent.getProjectionScreenMatrix(th.tempMatrix));let c=this._box.getSize(li()).y/2;c/=Math.pow(2,C-.5);let d=999,h=s;for(let p=0;p<t;p++){if(c>h){d=p;break}h/=2}d<i&&(i=d)}}}return i=Math.round(i),this._lastLodLevel!=i&&(this._nextLodTestTime=this.context.time.realtimeSinceStartup+.5,Hr&&(Hr=="verbose"&&console.warn(`LOD Level changed from ${this._lastLodLevel} to ${i} for ${this.name}`),this.drawGizmoLodLevel(!0))),this._lastLodLevel=i,i}drawGizmoLodLevel(A){const e=this._lastLodLevel,t=this.context.mainCamera.worldForward,i=this.context.mainCamera.worldPosition;for(const I of this.sharedMeshes)if(I&&I.geometry.boundingSphere){const o=I.geometry.boundingSphere;this._sphere.copy(o),this._sphere.applyMatrix4(I.matrixWorld);const s=this._sphere.center,n=this._sphere.radius,C=["#76c43e","#bcc43e","#c4ac3e","#c4673e","#ff3e3e"];if(A)me.DrawWireSphere(s,n,C[e],.1);else{const a="LOD "+e+`
|
|
6219
6219
|
`+I.geometry.index.count/3,B=li(t).multiplyScalar(n*.7).add(s),Q=B.distanceTo(i);I.geometry.index.count/3;const E=C[Math.min(C.length-1,e)]+"88",c=Math.min(10,n);me.DrawLabel(B,a,Q*.001+c*.03,void 0,16777215,E)}}}applyStencil(){Mh.applyStencil(this)}loadProgressiveTextures(A,e){return!zb&&A&&this.allowProgressiveLoading&&(A.userData||(A.userData={}),A.userData.LOD!==e)?(A.userData.LOD=e,Lt.assignTextureLOD(this.context,this.sourceId,A,e)):Promise.resolve(!0)}loadProgressiveMeshes(A,e){if(!zb&&A&&this.allowProgressiveLoading&&(A.userData||(A.userData={}),A.userData.LOD!==e)){A.userData.LOD=e;const t=A.geometry;return Lt.assignMeshLOD(this.context,this.sourceId,A,e).then(i=>{if(i&&A.userData.LOD==e&&t!=A.geometry&&(this.applyLightmapping(),this.handles))for(const I of this.handles)I.setGeometry(A.geometry)})}return!0}applySettings(A){A.receiveShadow=this.receiveShadows,this.shadowCastingMode==1?A.castShadow=!0:A.castShadow=!1}updateReflectionProbe(){if(this._reflectionProbe=null,this.reflectionProbeUsage!==0){if(!this.probeAnchor)return;this.startCoroutine(this._updateReflectionProbe(),Vi.LateUpdate)}}*_updateReflectionProbe(){const A=this.probeAnchor||this.gameObject,e=!!this.probeAnchor;this._reflectionProbe=Lc.get(A,this.context,e,this.probeAnchor)}setVisibility(A){if(!this.isMultiMaterialObject(this.gameObject))CE(this.gameObject,A);else for(const e of this.gameObject.children)this.isMeshOrSkinnedMesh(e)&&CE(e,A)}isMultiMaterialObject(A){return A.type==="Group"}isMeshOrSkinnedMesh(A){return A.type==="Mesh"||A.type==="SkinnedMesh"}},r($M,"tempMatrix",new MA),$M);let _i=th;HC([D()],_i.prototype,"receiveShadows",2);HC([D()],_i.prototype,"shadowCastingMode",2);HC([D()],_i.prototype,"lightmapIndex",2);HC([D(Ae)],_i.prototype,"lightmapScaleOffset",2);HC([D()],_i.prototype,"enableInstancing",2);HC([D()],_i.prototype,"renderOrder",2);HC([D()],_i.prototype,"allowOcclusionWhenDynamic",2);HC([D(pA)],_i.prototype,"probeAnchor",2);HC([D()],_i.prototype,"reflectionProbeUsage",2);class qu extends _i{}class sF extends qu{constructor(){super(...arguments);r(this,"_needUpdateBoundingSphere",!1)}awake(){var e;super.awake(),this.allowOcclusionWhenDynamic=!1,(e=this.gameObject.parent)==null||e.updateWorldMatrix(!1,!0),this.markBoundsDirty()}onAfterRender(){if(super.onAfterRender(),this.gameObject instanceof $o&&this._needUpdateBoundingSphere){this._needUpdateBoundingSphere=!1;const e=this.gameObject.geometry,t=Qd(this.gameObject);t&&(this.gameObject.geometry=t),this.gameObject.computeBoundingSphere(),this.gameObject.geometry=e}if(xoA&&this.gameObject instanceof $o&&this.gameObject.boundingSphere){const e=li(this.gameObject.boundingSphere.center).applyMatrix4(this.gameObject.matrixWorld);me.DrawWireSphere(e,this.gameObject.boundingSphere.radius,"red")}}markBoundsDirty(){this._needUpdateBoundingSphere=!0}}var _oA=Object.defineProperty,HoA=Object.getOwnPropertyDescriptor,oA=(g,A,e,t)=>{for(var i=t>1?void 0:t?HoA(A,e):A,I=g.length-1,o;I>=0;I--)(o=g[I])&&(i=(t?o(A,e,i):o(i))||i);return t&&i&&_oA(A,e,i),i};const Kf=IA("debugparticles");var aC=(g=>(g[g.Billboard=0]="Billboard",g[g.Stretch=1]="Stretch",g[g.HorizontalBillboard=2]="HorizontalBillboard",g[g.VerticalBillboard=3]="VerticalBillboard",g[g.Mesh=4]="Mesh",g))(aC||{});let hr=class{constructor(){r(this,"alphaKeys");r(this,"colorKeys")}get duration(){return 1}evaluate(A,e){let t,i=0,I=null,o=0;for(let s=0;s<this.alphaKeys.length;s++){const n=this.alphaKeys[s];(n.time<A||!t)&&(t=n,i=s)}for(let s=0;s<this.colorKeys.length;s++){const n=this.colorKeys[s];(n.time<A||!I)&&(I=n,o=s)}if(I)if(o+1<this.colorKeys.length){const n=this.colorKeys[o+1],C=te.remap(A,I.time,n.time,0,1);e.r=te.lerp(I.color.r,n.color.r,C),e.g=te.lerp(I.color.g,n.color.g,C),e.b=te.lerp(I.color.b,n.color.b,C)}else e.r=I.color.r,e.g=I.color.g,e.b=I.color.b;if(t)if(i+1<this.alphaKeys.length){const n=this.alphaKeys[i+1],C=te.remap(A,t.time,n.time,0,1);e.alpha=te.lerp(t.alpha,n.alpha,C)}else e.alpha=t.alpha;return e}};oA([D()],hr.prototype,"alphaKeys",2);oA([D()],hr.prototype,"colorKeys",2);var fd=(g=>(g[g.Local=0]="Local",g[g.World=1]="World",g[g.Custom=2]="Custom",g))(fd||{}),Jy=(g=>(g[g.Sphere=0]="Sphere",g[g.SphereShell=1]="SphereShell",g[g.Hemisphere=2]="Hemisphere",g[g.HemisphereShell=3]="HemisphereShell",g[g.Cone=4]="Cone",g[g.Box=5]="Box",g[g.Mesh=6]="Mesh",g[g.ConeShell=7]="ConeShell",g[g.ConeVolume=8]="ConeVolume",g[g.ConeVolumeShell=9]="ConeVolumeShell",g[g.Circle=10]="Circle",g[g.CircleEdge=11]="CircleEdge",g[g.SingleSidedEdge=12]="SingleSidedEdge",g[g.MeshRenderer=13]="MeshRenderer",g[g.SkinnedMeshRenderer=14]="SkinnedMeshRenderer",g[g.BoxShell=15]="BoxShell",g[g.BoxEdge=16]="BoxEdge",g[g.Donut=17]="Donut",g[g.Rectangle=18]="Rectangle",g[g.Sprite=19]="Sprite",g[g.SpriteRenderer=20]="SpriteRenderer",g))(Jy||{});const iP=class{constructor(){r(this,"mode");r(this,"constant");r(this,"constantMin");r(this,"constantMax");r(this,"curve");r(this,"curveMin");r(this,"curveMax");r(this,"curveMultiplier")}clone(){var A,e,t;const g=new iP;return g.mode=this.mode,g.constant=this.constant,g.constantMin=this.constantMin,g.constantMax=this.constantMax,g.curve=(A=this.curve)==null?void 0:A.clone(),g.curveMin=(e=this.curveMin)==null?void 0:e.clone(),g.curveMax=(t=this.curveMax)==null?void 0:t.clone(),g.curveMultiplier=this.curveMultiplier,g}evaluate(g,A){const e=A===void 0?Math.random():A;switch(this.mode){case 0:return this.constant;case 1:return g=te.clamp01(g),this.curve.evaluate(g)*this.curveMultiplier;case 2:const t=g*this.curveMin.duration,i=g*this.curveMax.duration;return te.lerp(this.curveMin.evaluate(t),this.curveMax.evaluate(i),e%1)*this.curveMultiplier;case 3:return te.lerp(this.constantMin,this.constantMax,e%1);default:this.curveMax.evaluate(g)*this.curveMultiplier;break}return 0}getMax(){switch(this.mode){case 0:return this.constant;case 1:return this.getMaxFromCurve(this.curve)*this.curveMultiplier;case 2:return Math.max(this.getMaxFromCurve(this.curveMin),this.getMaxFromCurve(this.curveMax))*this.curveMultiplier;case 3:return Math.max(this.constantMin,this.constantMax);default:return 0}}getMaxFromCurve(g){if(!g)return 0;let A=Number.MIN_VALUE;for(let e=0;e<g.keys.length;e++){const t=g.keys[e];t.value>A&&(A=t.value)}return A}};let ce=iP;oA([D()],ce.prototype,"mode",2);oA([D()],ce.prototype,"constant",2);oA([D()],ce.prototype,"constantMin",2);oA([D()],ce.prototype,"constantMax",2);oA([D(XB)],ce.prototype,"curve",2);oA([D(XB)],ce.prototype,"curveMin",2);oA([D(XB)],ce.prototype,"curveMax",2);oA([D()],ce.prototype,"curveMultiplier",2);var AD;const Ds=(AD=class{constructor(){r(this,"mode");r(this,"color");r(this,"colorMin");r(this,"colorMax");r(this,"gradient");r(this,"gradientMin");r(this,"gradientMax")}evaluate(g,A){const e=A===void 0?Math.random():A;switch(this.mode){case 0:return this.color;case 1:return this.gradient.evaluate(g,Ds._temp),Ds._temp;case 2:return Ds._temp.lerpColors(this.colorMin,this.colorMax,e);case 3:return this.gradientMin.evaluate(g,Ds._temp),this.gradientMax.evaluate(g,Ds._temp2),Ds._temp.lerp(Ds._temp2,e)}return Ds._temp.set(16711935),Ds._temp.alpha=1,Ds._temp}},r(AD,"_temp",new Gt(0,0,0,1)),r(AD,"_temp2",new Gt(0,0,0,1)),AD);let to=Ds;oA([D(Gt)],to.prototype,"color",2);oA([D(Gt)],to.prototype,"colorMin",2);oA([D(Gt)],to.prototype,"colorMax",2);oA([D(hr)],to.prototype,"gradient",2);oA([D(hr)],to.prototype,"gradientMin",2);oA([D(hr)],to.prototype,"gradientMax",2);var Vk=(g=>(g[g.Hierarchy=0]="Hierarchy",g[g.Local=1]="Local",g[g.Shape=2]="Shape",g))(Vk||{});class Zg{constructor(){r(this,"cullingMode");r(this,"duration");r(this,"emitterVelocityMode");r(this,"flipRotation");r(this,"gravityModifier");r(this,"gravityModifierMultiplier");r(this,"loop");r(this,"maxParticles");r(this,"playOnAwake");r(this,"prewarm");r(this,"ringBufferLoopRange");r(this,"ringBufferMode");r(this,"scalingMode");r(this,"simulationSpace");r(this,"simulationSpeed");r(this,"startColor");r(this,"startDelay");r(this,"startDelayMultiplier");r(this,"startLifetime");r(this,"startLifetimeMultiplier");r(this,"startRotation");r(this,"startRotationMultiplier");r(this,"startRotation3D");r(this,"startRotationX");r(this,"startRotationXMultiplier");r(this,"startRotationY");r(this,"startRotationYMultiplier");r(this,"startRotationZ");r(this,"startRotationZMultiplier");r(this,"startSize");r(this,"startSize3D");r(this,"startSizeMultiplier");r(this,"startSizeX");r(this,"startSizeXMultiplier");r(this,"startSizeY");r(this,"startSizeYMultiplier");r(this,"startSizeZ");r(this,"startSizeZMultiplier");r(this,"startSpeed");r(this,"startSpeedMultiplier");r(this,"stopAction");r(this,"useUnscaledTime")}}oA([D(ce)],Zg.prototype,"gravityModifier",2);oA([D(to)],Zg.prototype,"startColor",2);oA([D(ce)],Zg.prototype,"startDelay",2);oA([D(ce)],Zg.prototype,"startLifetime",2);oA([D(ce)],Zg.prototype,"startRotation",2);oA([D(ce)],Zg.prototype,"startRotationX",2);oA([D(ce)],Zg.prototype,"startRotationY",2);oA([D(ce)],Zg.prototype,"startRotationZ",2);oA([D(ce)],Zg.prototype,"startSize",2);oA([D(ce)],Zg.prototype,"startSizeX",2);oA([D(ce)],Zg.prototype,"startSizeY",2);oA([D(ce)],Zg.prototype,"startSizeZ",2);oA([D(ce)],Zg.prototype,"startSpeed",2);class Dd{constructor(){r(this,"cycleCount");r(this,"maxCount");r(this,"minCount");r(this,"probability");r(this,"repeatInterval");r(this,"time");r(this,"count");r(this,"_performed",0)}reset(){this._performed=0}run(A){if(A<=this.time)return 0;let e=0;if(this.cycleCount===0||this._performed<this.cycleCount){const t=this.time+this.repeatInterval*this._performed;if(A>=t&&(this._performed+=1,Math.random()<this.probability))switch(this.count.mode){case 0:e=this.count.constant;break;case 3:e=te.lerp(this.count.constantMin,this.count.constantMax,Math.random());break;case 1:e=this.count.curve.evaluate(Math.random());break;case 2:const i=Math.random();e=te.lerp(this.count.curveMin.evaluate(i),this.count.curveMax.evaluate(i),Math.random());break}}return e}}class qn{constructor(){r(this,"enabled");r(this,"bursts");r(this,"rateOverTime");r(this,"rateOverTimeMultiplier");r(this,"rateOverDistance");r(this,"rateOverDistanceMultiplier");r(this,"system")}get burstCount(){var A;return((A=this.bursts)==null?void 0:A.length)??0}reset(){var A;(A=this.bursts)==null||A.forEach(e=>e.reset())}getBurst(){let A=0;if(this.burstCount>0)for(let e=0;e<this.burstCount;e++){const t=this.bursts[e];this.system.main.loop&&t.time>=this.system.time&&t.reset(),A+=Math.round(t.run(this.system.time))}return A}}oA([D()],qn.prototype,"enabled",2);oA([D()],qn.prototype,"bursts",2);oA([D(ce)],qn.prototype,"rateOverTime",2);oA([D()],qn.prototype,"rateOverTimeMultiplier",2);oA([D(ce)],qn.prototype,"rateOverDistance",2);oA([D()],qn.prototype,"rateOverDistanceMultiplier",2);class bu{constructor(){r(this,"enabled");r(this,"color")}}oA([D(to)],bu.prototype,"color",2);class dr{constructor(){r(this,"enabled");r(this,"separateAxes");r(this,"size");r(this,"sizeMultiplier");r(this,"x");r(this,"xMultiplier");r(this,"y");r(this,"yMultiplier");r(this,"z");r(this,"zMultiplier");r(this,"_time",0);r(this,"_temp",new y)}evaluate(A,e,t){if(e||(e=this._temp),!this.enabled)return e.x=e.y=e.z=1,e;if(this.separateAxes)e.x=this.x.evaluate(A,t)*this.xMultiplier,e.y=this.y.evaluate(A,t)*this.yMultiplier,e.z=this.z.evaluate(A,t)*this.zMultiplier;else{const i=this.size.evaluate(A,t)*this.sizeMultiplier;e.x=i}return e}}oA([D(ce)],dr.prototype,"size",2);oA([D(ce)],dr.prototype,"x",2);oA([D(ce)],dr.prototype,"y",2);oA([D(ce)],dr.prototype,"z",2);var eD;const ih=(eD=class{constructor(){r(this,"shapeType",5);r(this,"enabled",!0);r(this,"alignToDirection",!1);r(this,"angle",0);r(this,"arc",360);r(this,"arcSpread");r(this,"arcSpeedMultiplier");r(this,"arcMode");r(this,"boxThickness");r(this,"position");r(this,"rotation");r(this,"_rotation",new Zt);r(this,"scale");r(this,"radius");r(this,"radiusThickness");r(this,"sphericalDirectionAmount");r(this,"randomDirectionAmount");r(this,"randomPositionAmount");r(this,"meshShapeType");r(this,"meshRenderer");r(this,"_meshObj");r(this,"_meshGeometry");r(this,"system");r(this,"_space");r(this,"_worldSpaceMatrix",new MA);r(this,"_worldSpaceMatrixInverse",new MA);r(this,"_vector",new y(0,0,0));r(this,"_temp",new y(0,0,0));r(this,"_triangle",new RI);r(this,"_dir",new y);r(this,"_loopTime",0);r(this,"_loopDirection",1);Kf&&console.log(this)}get type(){return Jy[this.shapeType]}initialize(g){this.onInitialize(g),g.position.copy(this._vector)}toJSON(){return this}clone(){return new ih}setMesh(g){this.meshRenderer=g,g?(this._meshObj=g.sharedMeshes[Math.floor(Math.random()*g.sharedMeshes.length)],this._meshGeometry=this._meshObj.geometry):(this._meshObj=void 0,this._meshGeometry=void 0)}update(g,A,e,t){this.system=g,this._space=e,e===1&&(this._worldSpaceMatrix.copy(t.matrixWorld),this._worldSpaceMatrix.elements[0]=1,this._worldSpaceMatrix.elements[5]=1,this._worldSpaceMatrix.elements[10]=1,this._worldSpaceMatrixInverse.copy(this._worldSpaceMatrix).invert())}applyRotation(g){const A=this.rotation.x!==0||this.rotation.y!==0||this.rotation.z!==0;return A&&(this._rotation.x=te.toRadians(this.rotation.x),this._rotation.y=te.toRadians(this.rotation.y),this._rotation.z=te.toRadians(this.rotation.z),this._rotation.order="ZYX",g.applyEuler(this._rotation)),A}onInitialize(g){this._vector.set(0,0,0),g.mesh=void 0,g.mesh_geometry=void 0;const A=this._temp.copy(this.position),e=this._space===1;e&&A.applyQuaternion(this.system.worldQuaternion);let t=this.radius;if(e&&(t*=this.system.worldScale.x),this.enabled){switch(this.shapeType){case 5:Kf&&me.DrawWireBox(this.position,this.scale,14540253,1),this._vector.x=Math.random()*this.scale.x-this.scale.x/2,this._vector.y=Math.random()*this.scale.y-this.scale.y/2,this._vector.z=Math.random()*this.scale.z-this.scale.z/2,this._vector.add(A);break;case 4:this.randomConePoint(this.position,this.angle,t,this.radiusThickness,this.arc,this.arcMode,this._vector);break;case 0:this.randomSpherePoint(this.position,t,this.radiusThickness,this.arc,this._vector);break;case 10:this.randomCirclePoint(this.position,t,this.radiusThickness,this.arc,this._vector);break;case 13:const i=this.meshRenderer;(i==null?void 0:i.destroyed)==!1&&this.setMesh(i);const I=g.mesh=this._meshObj,o=g.mesh_geometry=this._meshGeometry;if(I&&o)switch(this.meshShapeType){case 0:{const s=o.getAttribute("position"),n=Math.floor(Math.random()*s.count);this._vector.fromBufferAttribute(s,n),this._vector.applyMatrix4(I.matrixWorld),g.mesh_normal=n}break;case 1:break;case 2:{const s=o.index;if(s){let n=Math.random(),C=Math.random();n+C>1&&(n=1-n,C=1-C);const a=Math.floor(Math.random()*(s.count/3));let B=a*3,Q=a*3+1,E=a*3+2;B=s.getX(B),Q=s.getX(Q),E=s.getX(E);const c=o.getAttribute("position");this._triangle.a.fromBufferAttribute(c,B),this._triangle.b.fromBufferAttribute(c,Q),this._triangle.c.fromBufferAttribute(c,E),this._vector.set(0,0,0).addScaledVector(this._triangle.a,n).addScaledVector(this._triangle.b,C).addScaledVector(this._triangle.c,1-(n+C)),this._vector.applyMatrix4(I.matrixWorld),g.mesh_normal=a}}break}break;default:this._vector.set(0,0,0),pe()&&!globalThis.__particlesystem_shapetype_unsupported&&(console.warn("ParticleSystem ShapeType is not supported:",Jy[this.shapeType]),globalThis.__particlesystem_shapetype_unsupported=!0);break}this.randomizePosition(this._vector,this.randomPositionAmount)}this.applyRotation(this._vector),e&&(this._vector.applyQuaternion(this.system.worldQuaternion),this._vector.add(this.system.worldPos)),Kf&&me.DrawSphere(this._vector,.03,16711680,.5,!0)}getDirection(g,A){var e;if(!this.enabled)return this._dir.set(0,0,1),this._dir;switch(this.shapeType){case 5:this._dir.set(0,0,1);break;case 4:this._dir.set(0,0,1);break;case 10:case 0:const t=A.x,i=A.y,I=A.z;this._dir.set(t,i,I),(e=this.system)!=null&&e.worldspace?this._dir.sub(this.system.worldPos):this._dir.sub(this.position);break;case 13:const o=g.mesh,s=g.mesh_geometry;if(o&&s)switch(this.meshShapeType){case 0:{const n=s.getAttribute("normal"),C=g.mesh_normal;this._dir.fromBufferAttribute(n,C)}break;case 1:break;case 2:{const n=s.index;if(n){const C=g.mesh_normal,a=n.getX(C*3),B=n.getX(C*3+1),Q=n.getX(C*3+2),E=s.getAttribute("position"),c=li(),d=li(),h=li();c.fromBufferAttribute(E,a),d.fromBufferAttribute(E,B),h.fromBufferAttribute(E,Q),c.sub(d),h.sub(d),c.cross(h),this._dir.copy(c).multiplyScalar(-1);const l=Ft(o);this._dir.applyQuaternion(l)}}break}break;default:this._dir.set(0,0,1);break}return this._space===1&&this._dir.applyQuaternion(this.system.worldQuaternion),this.applyRotation(this._dir),this._dir.normalize(),this.spherizeDirection(this._dir,this.sphericalDirectionAmount),this.randomizeDirection(this._dir,this.randomDirectionAmount),Kf&&(me.DrawSphere(A,.01,8925952,.5,!0),me.DrawDirection(A,this._dir,8925952,.5,!0)),this._dir}randomizePosition(g,A){if(A<=0)return;const e=ih._tempVec;e.set(Math.random()*2-1,Math.random()*2-1,Math.random()*2-1),e.x*=A*this.scale.x,e.y*=A*this.scale.y,e.z*=A*this.scale.z,g.add(e)}randomizeDirection(g,A){if(A===0)return;const e=ih._randomQuat,t=ih._tempVec;t.set(Math.random()-.5,Math.random()-.5,Math.random()-.5).normalize(),e.setFromAxisAngle(t,A*Math.random()*Math.PI),g.applyQuaternion(e)}spherizeDirection(g,A){if(A===0)return;const e=Math.random()*Math.PI*2,t=Math.acos(1-Math.random()*2),i=Math.sin(t)*Math.cos(e),I=Math.sin(t)*Math.sin(e),o=Math.cos(t),s=new y(i,I,o);g.lerp(s,A)}randomSpherePoint(g,A,e,t,i){const I=Math.random(),o=Math.random(),s=2*Math.PI*I*(t/360),n=Math.acos(2*o-1),C=te.lerp(1,1-Math.pow(1-Math.random(),Math.PI),e)*A,a=g.x+this.scale.x*(-C*Math.sin(n)*Math.cos(s)),B=g.y+this.scale.y*(C*Math.sin(n)*Math.sin(s)),Q=g.z+this.scale.z*(C*Math.cos(n));i.x=a,i.y=B,i.z=Q}randomCirclePoint(g,A,e,t,i){const I=Math.random(),o=2*Math.PI*I*(t/360),s=te.lerp(1,1-Math.pow(1-Math.random(),Math.PI),e)*A,n=g.x+this.scale.x*s*Math.cos(o),C=g.y+this.scale.y*s*Math.sin(o),a=g.z;i.x=n,i.y=C,i.z=a}randomConePoint(g,A,e,t,i,I,o){let s=0,n=0;switch(I){case 0:s=Math.random(),n=Math.random();break;case 2:this._loopTime>1&&(this._loopDirection=-1),this._loopTime<0&&(this._loopDirection=1);case 1:s=.5,n=Math.random(),this._loopTime+=this.system.deltaTime*this._loopDirection;break}let C=2*Math.PI*s*(i/360);switch(I){case 2:case 1:C+=Math.PI+.5,C+=this._loopTime*Math.PI*2,C%=te.toRadians(i);break}const a=Math.acos(2*n-1),B=te.lerp(1,1-Math.pow(1-Math.random(),Math.PI),t)*e,Q=g.x+-B*Math.sin(a)*Math.cos(C),E=g.y+B*Math.sin(a)*Math.sin(C),c=g.z;o.x=Q*this.scale.x,o.y=E*this.scale.y,o.z=c*this.scale.z}},r(eD,"_randomQuat",new kA),r(eD,"_tempVec",new y),eD);let Di=ih;oA([D()],Di.prototype,"shapeType",2);oA([D()],Di.prototype,"enabled",2);oA([D()],Di.prototype,"alignToDirection",2);oA([D()],Di.prototype,"angle",2);oA([D()],Di.prototype,"arc",2);oA([D()],Di.prototype,"arcSpread",2);oA([D()],Di.prototype,"arcSpeedMultiplier",2);oA([D()],Di.prototype,"arcMode",2);oA([D(y)],Di.prototype,"boxThickness",2);oA([D(y)],Di.prototype,"position",2);oA([D(y)],Di.prototype,"rotation",2);oA([D(y)],Di.prototype,"scale",2);oA([D()],Di.prototype,"radius",2);oA([D()],Di.prototype,"radiusThickness",2);oA([D()],Di.prototype,"sphericalDirectionAmount",2);oA([D()],Di.prototype,"randomDirectionAmount",2);oA([D()],Di.prototype,"randomPositionAmount",2);oA([D()],Di.prototype,"meshShapeType",2);oA([D(qu)],Di.prototype,"meshRenderer",2);class Ut{constructor(){r(this,"damping");r(this,"enabled");r(this,"frequency");r(this,"octaveCount");r(this,"octaveMultiplier");r(this,"octaveScale");r(this,"positionAmount");r(this,"quality");r(this,"remap");r(this,"remapEnabled");r(this,"remapMultiplier");r(this,"remapX");r(this,"remapXMultiplier");r(this,"remapY");r(this,"remapYMultiplier");r(this,"remapZ");r(this,"remapZMultiplier");r(this,"scrollSpeedMultiplier");r(this,"separateAxes");r(this,"strengthMultiplier");r(this,"strengthX");r(this,"strengthXMultiplier");r(this,"strengthY");r(this,"strengthYMultiplier");r(this,"strengthZ");r(this,"strengthZMultiplier");r(this,"_noise");r(this,"_time",0);r(this,"_temp",new y)}update(A){this._time+=A.time.deltaTime*this.scrollSpeedMultiplier}apply(A,e,t,i,I,o){if(!this.enabled)return;this._noise||(this._noise=QoA(()=>0));const s=this._temp.set(e.x,e.y,e.z).multiplyScalar(this.frequency),n=this._noise(s.x,s.y,s.z,this._time),C=this._noise(s.x,s.y,s.z,this._time+1e3*this.frequency),a=this._noise(s.x,s.y,s.z,this._time+2e3*this.frequency);this._temp.set(n,C,a).normalize();const B=I/o;let Q=this.positionAmount.evaluate(B);this.separateAxes?(this._temp.x*=Q*this.strengthXMultiplier,this._temp.y*=Q*this.strengthYMultiplier,this._temp.z*=Q*this.strengthZMultiplier):(this.strengthX&&(Q*=this.strengthX.evaluate(B)*1.5),this._temp.multiplyScalar(Q)),t.x+=this._temp.x,t.y+=this._temp.y,t.z+=this._temp.z}}oA([D()],Ut.prototype,"damping",2);oA([D()],Ut.prototype,"enabled",2);oA([D()],Ut.prototype,"frequency",2);oA([D()],Ut.prototype,"octaveCount",2);oA([D()],Ut.prototype,"octaveMultiplier",2);oA([D()],Ut.prototype,"octaveScale",2);oA([D(ce)],Ut.prototype,"positionAmount",2);oA([D()],Ut.prototype,"quality",2);oA([D(ce)],Ut.prototype,"remap",2);oA([D()],Ut.prototype,"remapEnabled",2);oA([D()],Ut.prototype,"remapMultiplier",2);oA([D(ce)],Ut.prototype,"remapX",2);oA([D()],Ut.prototype,"remapXMultiplier",2);oA([D(ce)],Ut.prototype,"remapY",2);oA([D()],Ut.prototype,"remapYMultiplier",2);oA([D(ce)],Ut.prototype,"remapZ",2);oA([D()],Ut.prototype,"remapZMultiplier",2);oA([D()],Ut.prototype,"scrollSpeedMultiplier",2);oA([D()],Ut.prototype,"separateAxes",2);oA([D()],Ut.prototype,"strengthMultiplier",2);oA([D(ce)],Ut.prototype,"strengthX",2);oA([D()],Ut.prototype,"strengthXMultiplier",2);oA([D(ce)],Ut.prototype,"strengthY",2);oA([D()],Ut.prototype,"strengthYMultiplier",2);oA([D(ce)],Ut.prototype,"strengthZ",2);oA([D()],Ut.prototype,"strengthZMultiplier",2);class Ci{constructor(){r(this,"enabled");r(this,"attachRibbonToTransform",!1);r(this,"colorOverLifetime");r(this,"colorOverTrail");r(this,"dieWithParticles",!0);r(this,"inheritParticleColor",!0);r(this,"lifetime");r(this,"lifetimeMultiplier");r(this,"minVertexDistance",.2);r(this,"mode",0);r(this,"ratio",1);r(this,"ribbonCount",1);r(this,"shadowBias",0);r(this,"sizeAffectsLifetime",!1);r(this,"sizeAffectsWidth",!1);r(this,"splitSubEmitterRibbons",!1);r(this,"textureMode",0);r(this,"widthOverTrail");r(this,"widthOverTrailMultiplier");r(this,"worldSpace",!1)}getWidth(A,e,t,i){const I=this.widthOverTrail.evaluate(t,i);return A*=I,A}getColor(A,e,t){const i=this.colorOverTrail.evaluate(t),I=this.colorOverLifetime.evaluate(e);A.x*=i.r*I.r,A.y*=i.g*I.g,A.z*=i.b*I.b,A.w*=i.alpha*I.alpha}}oA([D()],Ci.prototype,"enabled",2);oA([D()],Ci.prototype,"attachRibbonToTransform",2);oA([D(to)],Ci.prototype,"colorOverLifetime",2);oA([D(to)],Ci.prototype,"colorOverTrail",2);oA([D()],Ci.prototype,"dieWithParticles",2);oA([D()],Ci.prototype,"inheritParticleColor",2);oA([D(ce)],Ci.prototype,"lifetime",2);oA([D()],Ci.prototype,"lifetimeMultiplier",2);oA([D()],Ci.prototype,"minVertexDistance",2);oA([D()],Ci.prototype,"mode",2);oA([D()],Ci.prototype,"ratio",2);oA([D()],Ci.prototype,"ribbonCount",2);oA([D()],Ci.prototype,"shadowBias",2);oA([D()],Ci.prototype,"sizeAffectsLifetime",2);oA([D()],Ci.prototype,"sizeAffectsWidth",2);oA([D()],Ci.prototype,"splitSubEmitterRibbons",2);oA([D()],Ci.prototype,"textureMode",2);oA([D(ce)],Ci.prototype,"widthOverTrail",2);oA([D()],Ci.prototype,"widthOverTrailMultiplier",2);oA([D()],Ci.prototype,"worldSpace",2);class yi{constructor(){r(this,"enabled");r(this,"space",0);r(this,"orbitalX");r(this,"orbitalY");r(this,"orbitalZ");r(this,"orbitalXMultiplier");r(this,"orbitalYMultiplier");r(this,"orbitalZMultiplier");r(this,"orbitalOffsetX");r(this,"orbitalOffsetY");r(this,"orbitalOffsetZ");r(this,"speedModifier");r(this,"speedModifierMultiplier");r(this,"x");r(this,"xMultiplier");r(this,"y");r(this,"yMultiplier");r(this,"z");r(this,"zMultiplier");r(this,"_system");r(this,"_temp",new y);r(this,"_temp2",new y);r(this,"_temp3",new y);r(this,"_hasOrbital",!1);r(this,"_index",0);r(this,"_orbitalMatrix",new MA)}update(A){this._system=A}init(A){this._index==0&&(A.debug=!0),this._index+=1,A.orbitx=this.orbitalX.evaluate(Math.random()),A.orbity=this.orbitalY.evaluate(Math.random()),A.orbitz=this.orbitalZ.evaluate(Math.random()),this._hasOrbital=A.orbitx!=0||A.orbity!=0||A.orbitz!=0}apply(A,e,t,i,I,o,s){var E;if(!this.enabled)return;const n=o/s,C=this.speedModifier.evaluate(n)*this.speedModifierMultiplier,a=this.x.evaluate(n),B=this.y.evaluate(n),Q=this.z.evaluate(n);if(this._temp.set(-a,B,Q),this._system&&this._system.main.simulationSpace===1&&this._temp.applyQuaternion(this._system.worldQuaternion),this._hasOrbital&&((E=this._system)==null?void 0:E.worldPos)){const d=this._temp2.set(t.x,t.y,t.z),h=this.orbitalXMultiplier,l=this.orbitalYMultiplier,p=this.orbitalZMultiplier,u=C*Math.PI*2*10,f=Math.cos(u*h),m=Math.sin(u*h),M=Math.cos(u*l),k=Math.sin(u*l),S=Math.cos(u*p),F=Math.sin(u*p),w=d.x*(M*S)+d.y*(M*F)+d.z*-k,R=d.x*(m*k*S-f*F)+d.y*(m*k*F+f*S)+d.z*(m*M),H=d.x*(f*k*S+m*F)+d.y*(f*k*F-m*S)+d.z*(f*M),x=this._temp3.set(d.x-w,d.y-R,d.z-H);x.normalize(),x.multiplyScalar(.2/I*Math.max(this.orbitalXMultiplier,this.orbitalYMultiplier,this.orbitalZMultiplier)),i.x+=x.x,i.y+=x.y,i.z+=x.z}i.x+=this._temp.x,i.y+=this._temp.y,i.z+=this._temp.z,i.x*=C,i.y*=C,i.z*=C}}oA([D()],yi.prototype,"enabled",2);oA([D()],yi.prototype,"space",2);oA([D(ce)],yi.prototype,"orbitalX",2);oA([D(ce)],yi.prototype,"orbitalY",2);oA([D(ce)],yi.prototype,"orbitalZ",2);oA([D()],yi.prototype,"orbitalXMultiplier",2);oA([D()],yi.prototype,"orbitalYMultiplier",2);oA([D()],yi.prototype,"orbitalZMultiplier",2);oA([D()],yi.prototype,"orbitalOffsetX",2);oA([D()],yi.prototype,"orbitalOffsetY",2);oA([D()],yi.prototype,"orbitalOffsetZ",2);oA([D(ce)],yi.prototype,"speedModifier",2);oA([D()],yi.prototype,"speedModifierMultiplier",2);oA([D(ce)],yi.prototype,"x",2);oA([D()],yi.prototype,"xMultiplier",2);oA([D(ce)],yi.prototype,"y",2);oA([D()],yi.prototype,"yMultiplier",2);oA([D(ce)],yi.prototype,"z",2);oA([D()],yi.prototype,"zMultiplier",2);class Xg{constructor(){r(this,"animation");r(this,"enabled");r(this,"cycleCount");r(this,"frameOverTime");r(this,"frameOverTimeMultiplier");r(this,"numTilesX");r(this,"numTilesY");r(this,"startFrame");r(this,"startFrameMultiplier");r(this,"rowMode");r(this,"rowIndex");r(this,"spriteCount");r(this,"timeMode")}sampleOnceAtStart(){if(this.timeMode===0)switch(this.frameOverTime.mode){case 0:case 3:case 2:case 1:return!0}return!1}getStartIndex(){return this.sampleOnceAtStart()?Math.random()*(this.numTilesX*this.numTilesY):0}evaluate(A){if(!this.sampleOnceAtStart())return this.getIndex(A)}getIndex(A){const e=this.numTilesX*this.numTilesY;A=A*this.cycleCount;let t=this.frameOverTime.evaluate(A%1);return t*=this.frameOverTimeMultiplier,t*=e,t=t%e,t=Math.floor(t),t}}oA([D()],Xg.prototype,"animation",2);oA([D()],Xg.prototype,"enabled",2);oA([D()],Xg.prototype,"cycleCount",2);oA([D(ce)],Xg.prototype,"frameOverTime",2);oA([D()],Xg.prototype,"frameOverTimeMultiplier",2);oA([D()],Xg.prototype,"numTilesX",2);oA([D()],Xg.prototype,"numTilesY",2);oA([D(ce)],Xg.prototype,"startFrame",2);oA([D()],Xg.prototype,"startFrameMultiplier",2);oA([D()],Xg.prototype,"rowMode",2);oA([D()],Xg.prototype,"rowIndex",2);oA([D()],Xg.prototype,"spriteCount",2);oA([D()],Xg.prototype,"timeMode",2);class Qs{constructor(){r(this,"enabled");r(this,"separateAxes");r(this,"x");r(this,"xMultiplier");r(this,"y");r(this,"yMultiplier");r(this,"z");r(this,"zMultiplier")}evaluate(A,e){return this.enabled?this.separateAxes?0:this.z.evaluate(A,e)*-1:0}}oA([D()],Qs.prototype,"enabled",2);oA([D()],Qs.prototype,"separateAxes",2);oA([D(ce)],Qs.prototype,"x",2);oA([D()],Qs.prototype,"xMultiplier",2);oA([D(ce)],Qs.prototype,"y",2);oA([D()],Qs.prototype,"yMultiplier",2);oA([D(ce)],Qs.prototype,"z",2);oA([D()],Qs.prototype,"zMultiplier",2);class Fo{constructor(){r(this,"enabled");r(this,"range");r(this,"separateAxes");r(this,"x");r(this,"xMultiplier");r(this,"y");r(this,"yMultiplier");r(this,"z");r(this,"zMultiplier")}evaluate(A,e){if(!this.enabled)return 0;if(!this.separateAxes){const t=te.lerp(this.range.x,this.range.y,e);return this.z.evaluate(t)*-1}return 0}}oA([D()],Fo.prototype,"enabled",2);oA([D()],Fo.prototype,"range",2);oA([D()],Fo.prototype,"separateAxes",2);oA([D(ce)],Fo.prototype,"x",2);oA([D()],Fo.prototype,"xMultiplier",2);oA([D(ce)],Fo.prototype,"y",2);oA([D()],Fo.prototype,"yMultiplier",2);oA([D(ce)],Fo.prototype,"z",2);oA([D()],Fo.prototype,"zMultiplier",2);class eg{constructor(){r(this,"enabled");r(this,"dampen");r(this,"drag");r(this,"dragMultiplier");r(this,"limit");r(this,"limitMultiplier");r(this,"separateAxes");r(this,"limitX");r(this,"limitXMultiplier");r(this,"limitY");r(this,"limitYMultiplier");r(this,"limitZ");r(this,"limitZMultiplier");r(this,"multiplyDragByParticleSize",!1);r(this,"multiplyDragByParticleVelocity",!1);r(this,"space");r(this,"_temp",new y);r(this,"_temp2",new y)}apply(A,e,t,i,I,o,s){if(this.enabled){const n=this.limit.evaluate(I)*this.limitMultiplier;if(e.length()>n){this._temp.copy(e).normalize().multiplyScalar(n);const a=this.dampen*.5;e.x=te.lerp(e.x,this._temp.x,a),e.y=te.lerp(e.y,this._temp.y,a),e.z=te.lerp(e.z,this._temp.z,a),t.x=te.lerp(t.x,this._temp.x,a),t.y=te.lerp(t.y,this._temp.y,a),t.z=te.lerp(t.z,this._temp.z,a)}}}}oA([D()],eg.prototype,"enabled",2);oA([D()],eg.prototype,"dampen",2);oA([D(ce)],eg.prototype,"drag",2);oA([D()],eg.prototype,"dragMultiplier",2);oA([D(ce)],eg.prototype,"limit",2);oA([D()],eg.prototype,"limitMultiplier",2);oA([D()],eg.prototype,"separateAxes",2);oA([D(ce)],eg.prototype,"limitX",2);oA([D()],eg.prototype,"limitXMultiplier",2);oA([D(ce)],eg.prototype,"limitY",2);oA([D()],eg.prototype,"limitYMultiplier",2);oA([D(ce)],eg.prototype,"limitZ",2);oA([D()],eg.prototype,"limitZMultiplier",2);oA([D()],eg.prototype,"multiplyDragByParticleSize",2);oA([D()],eg.prototype,"multiplyDragByParticleVelocity",2);oA([D()],eg.prototype,"space",2);const gP=class{constructor(){r(this,"enabled");r(this,"curve");r(this,"curveMultiplier");r(this,"mode");r(this,"system");r(this,"_temp",new y);r(this,"_firstUpdate",!0);r(this,"_frames",0)}clone(){var A;const g=new gP;return g.enabled=this.enabled,g.curve=(A=this.curve)==null?void 0:A.clone(),g.curveMultiplier=this.curveMultiplier,g.mode=this.mode,g}get _lastWorldPosition(){return this.system._iv_lastWorldPosition||(this.system._iv_lastWorldPosition=new y),this.system._iv_lastWorldPosition}get _velocity(){return this.system._iv_velocity||(this.system._iv_velocity=new y),this.system._iv_velocity}awake(g){this.system=g,this.reset()}reset(){this._firstUpdate=!0}update(g){this.enabled&&this.system.worldspace!==!1&&(this._firstUpdate?(this._firstUpdate=!1,this._velocity.set(0,0,0),this._lastWorldPosition.copy(this.system.worldPos)):this._lastWorldPosition&&(this._velocity.copy(this.system.worldPos).sub(this._lastWorldPosition).multiplyScalar(1/this.system.deltaTime),this._lastWorldPosition.copy(this.system.worldPos)))}applyInitial(g){if(this.enabled&&this.system.worldspace!==!1&&this.mode===0){const A=this.curve.evaluate(Math.random(),Math.random());this._temp.copy(this._velocity).multiplyScalar(A),g.add(this._temp)}}applyCurrent(g,A,e){if(this.enabled&&this.system&&this.system.worldspace!==!1&&this.mode===1){const t=this.curve.evaluate(A,e);this._temp.copy(this._velocity).multiplyScalar(t),g.add(this._temp)}}};let ur=gP;oA([D()],ur.prototype,"enabled",2);oA([D(ce)],ur.prototype,"curve",2);oA([D()],ur.prototype,"curveMultiplier",2);oA([D()],ur.prototype,"mode",2);class xI{constructor(){r(this,"enabled");r(this,"range");r(this,"separateAxes");r(this,"size");r(this,"sizeMultiplier");r(this,"x");r(this,"xMultiplier");r(this,"y");r(this,"yMultiplier");r(this,"z");r(this,"zMultiplier")}evaluate(A,e,t,i){const I=A.length(),o=te.remap(I,this.range.x,this.range.y,0,1),s=this.size.evaluate(o,t);return i*s}}oA([D()],xI.prototype,"enabled",2);oA([D(tA)],xI.prototype,"range",2);oA([D()],xI.prototype,"separateAxes",2);oA([D(ce)],xI.prototype,"size",2);oA([D()],xI.prototype,"sizeMultiplier",2);oA([D(ce)],xI.prototype,"x",2);oA([D()],xI.prototype,"xMultiplier",2);oA([D(ce)],xI.prototype,"y",2);oA([D()],xI.prototype,"yMultiplier",2);oA([D(ce)],xI.prototype,"z",2);oA([D()],xI.prototype,"zMultiplier",2);class nQ{constructor(){r(this,"enabled");r(this,"range");r(this,"color")}evaluate(A,e,t){const i=A.length(),I=te.remap(i,this.range.x,this.range.y,0,1),o=this.color.evaluate(I,e);t.x*=o.r,t.y*=o.g,t.z*=o.b,t.w*=o.alpha}}oA([D()],nQ.prototype,"enabled",2);oA([D(tA)],nQ.prototype,"range",2);oA([D(to)],nQ.prototype,"color",2);const OoA={name:"HorizontalBlurShader",uniforms:{tDiffuse:{value:null},h:{value:1/512}},vertexShader:`
|
|
@@ -46,8 +46,9 @@ export declare class LeftRoomResponse {
|
|
|
46
46
|
export declare class UserJoinedOrLeftRoomModel {
|
|
47
47
|
userId: string;
|
|
48
48
|
}
|
|
49
|
-
/** The Needle Engine networking server supports the concept of ownership that can be requested.
|
|
50
|
-
*
|
|
49
|
+
/** The Needle Engine networking server supports the concept of ownership that can be requested.
|
|
50
|
+
* The `{@link OwnershipModel}` enum contains possible outgoing (Request) and incoming (Response) events for communicating ownership.
|
|
51
|
+
* We recommend using the `OwnershipModel` class instead of dealing with those events directly. */
|
|
51
52
|
export declare enum OwnershipEvent {
|
|
52
53
|
RequestHasOwner = "request-has-owner",
|
|
53
54
|
ResponseHasOwner = "response-has-owner",
|
|
@@ -61,7 +62,8 @@ export declare enum OwnershipEvent {
|
|
|
61
62
|
LostOwnershipBroadcast = "lost-ownership-broadcast"
|
|
62
63
|
}
|
|
63
64
|
declare type WebsocketSendType = IModel | object | boolean | null | string | number;
|
|
64
|
-
/** Class for abstracting the concept of ownership regarding a networked object or component.
|
|
65
|
+
/** Class for abstracting the concept of ownership regarding a networked object or component.
|
|
66
|
+
* A component that is owned by another user can not be modified through networking (the server will reject changes) */
|
|
65
67
|
export declare class OwnershipModel {
|
|
66
68
|
guid: string;
|
|
67
69
|
private connection;
|
|
@@ -48,8 +48,9 @@ export class LeftRoomResponse {
|
|
|
48
48
|
export class UserJoinedOrLeftRoomModel {
|
|
49
49
|
userId;
|
|
50
50
|
}
|
|
51
|
-
/** The Needle Engine networking server supports the concept of ownership that can be requested.
|
|
52
|
-
*
|
|
51
|
+
/** The Needle Engine networking server supports the concept of ownership that can be requested.
|
|
52
|
+
* The `{@link OwnershipModel}` enum contains possible outgoing (Request) and incoming (Response) events for communicating ownership.
|
|
53
|
+
* We recommend using the `OwnershipModel` class instead of dealing with those events directly. */
|
|
53
54
|
export var OwnershipEvent;
|
|
54
55
|
(function (OwnershipEvent) {
|
|
55
56
|
OwnershipEvent["RequestHasOwner"] = "request-has-owner";
|
|
@@ -63,7 +64,8 @@ export var OwnershipEvent;
|
|
|
63
64
|
OwnershipEvent["GainedOwnershipBroadcast"] = "gained-ownership-broadcast";
|
|
64
65
|
OwnershipEvent["LostOwnershipBroadcast"] = "lost-ownership-broadcast";
|
|
65
66
|
})(OwnershipEvent || (OwnershipEvent = {}));
|
|
66
|
-
/** Class for abstracting the concept of ownership regarding a networked object or component.
|
|
67
|
+
/** Class for abstracting the concept of ownership regarding a networked object or component.
|
|
68
|
+
* A component that is owned by another user can not be modified through networking (the server will reject changes) */
|
|
67
69
|
export class OwnershipModel {
|
|
68
70
|
guid;
|
|
69
71
|
connection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_networking.js","sourceRoot":"","sources":["../../src/engine/engine_networking.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine_networking.js","sourceRoot":"","sources":["../../src/engine/engine_networking.ts"],"names":[],"mappings":"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"}
|
|
@@ -532,12 +532,16 @@ export class Renderer extends Behaviour {
|
|
|
532
532
|
// ensure shared meshes are initialized
|
|
533
533
|
const _ = this.sharedMeshes;
|
|
534
534
|
this.setVisibility(true);
|
|
535
|
-
if (
|
|
535
|
+
// Check if the renderer is using instancing (or any child object is supposed to use instancing)
|
|
536
|
+
const isUsingInstancing = this._isInstancingEnabled ||
|
|
537
|
+
(this.enableInstancing == true || (Array.isArray(this.enableInstancing) && this.enableInstancing.some(x => x)));
|
|
538
|
+
if (isUsingInstancing) {
|
|
536
539
|
if (this.__internalDidAwakeAndStart)
|
|
537
540
|
this.setInstancingEnabled(true);
|
|
538
541
|
}
|
|
542
|
+
// if no insancing is used we can apply the stencil settings
|
|
543
|
+
// but instancing and stencil at the same time is not supported
|
|
539
544
|
else if (this.enabled) {
|
|
540
|
-
// this.gameObject.visible = true;
|
|
541
545
|
this.applyStencil();
|
|
542
546
|
}
|
|
543
547
|
this.updateReflectionProbe();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../src/engine-components/Renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../src/engine-components/Renderer.ts"],"names":[],"mappings":"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"}
|