@splinetool/runtime 2.0.105 → 2.0.107
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/build/{runtime-bloom-PRPXZIUW.js → runtime-bloom-YOBHOQ26.js} +1 -1
- package/build/runtime-bloom-YOBHOQ26.js.br +0 -0
- package/build/runtime-bloom-YOBHOQ26.js.gz +0 -0
- package/build/{runtime-brightnessContrast-KDB5RYJA.js → runtime-brightnessContrast-7WMHEOVI.js} +1 -1
- package/build/runtime-brightnessContrast-7WMHEOVI.js.br +0 -0
- package/build/runtime-brightnessContrast-7WMHEOVI.js.gz +0 -0
- package/build/{runtime-chromaticAberration-PZW4SDDS.js → runtime-chromaticAberration-25A4PWGF.js} +1 -1
- package/build/runtime-chromaticAberration-25A4PWGF.js.br +0 -0
- package/build/runtime-chromaticAberration-25A4PWGF.js.gz +0 -0
- package/build/{runtime-chunk-SPW5ZAC2.js → runtime-chunk-2MWROX54.js} +1 -1
- package/build/{runtime-chunk-SPW5ZAC2.js.br → runtime-chunk-2MWROX54.js.br} +0 -0
- package/build/runtime-chunk-2MWROX54.js.gz +0 -0
- package/build/{runtime-chunk-OGKACVH6.js → runtime-chunk-3HKB5WZH.js} +1 -1
- package/build/runtime-chunk-3HKB5WZH.js.br +0 -0
- package/build/runtime-chunk-3HKB5WZH.js.gz +0 -0
- package/build/{runtime-chunk-OOOV6H7H.js → runtime-chunk-4Z7ZMHQK.js} +1 -1
- package/build/{runtime-chunk-OOOV6H7H.js.br → runtime-chunk-4Z7ZMHQK.js.br} +0 -0
- package/build/{runtime-chunk-OOOV6H7H.js.gz → runtime-chunk-4Z7ZMHQK.js.gz} +0 -0
- package/build/{runtime-chunk-OXRGQN3K.js → runtime-chunk-6QOHESEA.js} +1 -1
- package/build/runtime-chunk-6QOHESEA.js.br +0 -0
- package/build/runtime-chunk-6QOHESEA.js.gz +0 -0
- package/build/{runtime-chunk-PYIDRIXX.js → runtime-chunk-6VEOICF7.js} +1 -1
- package/build/runtime-chunk-6VEOICF7.js.br +0 -0
- package/build/runtime-chunk-6VEOICF7.js.gz +0 -0
- package/build/{runtime-chunk-EXQOXWMA.js → runtime-chunk-7L6RWRUB.js} +1 -1
- package/build/runtime-chunk-7L6RWRUB.js.br +0 -0
- package/build/runtime-chunk-7L6RWRUB.js.gz +0 -0
- package/build/{runtime-chunk-3SMB7GWC.js → runtime-chunk-7M2ECX7M.js} +1 -1
- package/build/runtime-chunk-7M2ECX7M.js.br +0 -0
- package/build/runtime-chunk-7M2ECX7M.js.gz +0 -0
- package/build/{runtime-chunk-ACYKJPOE.js → runtime-chunk-A3ASGKQZ.js} +1 -1
- package/build/runtime-chunk-A3ASGKQZ.js.br +0 -0
- package/build/runtime-chunk-A3ASGKQZ.js.gz +0 -0
- package/build/{runtime-chunk-KL4ASGPT.js → runtime-chunk-BWSOZGDK.js} +1 -1
- package/build/runtime-chunk-BWSOZGDK.js.br +0 -0
- package/build/runtime-chunk-BWSOZGDK.js.gz +0 -0
- package/build/{runtime-chunk-TRWD4WLH.js → runtime-chunk-E527B2XB.js} +1 -1
- package/build/runtime-chunk-E527B2XB.js.br +0 -0
- package/build/runtime-chunk-E527B2XB.js.gz +0 -0
- package/build/{runtime-chunk-IAUJFHKI.js → runtime-chunk-IXGCBEL3.js} +1 -1
- package/build/runtime-chunk-IXGCBEL3.js.br +0 -0
- package/build/runtime-chunk-IXGCBEL3.js.gz +0 -0
- package/build/{runtime-chunk-LCBCIXFO.js → runtime-chunk-J7PATUZB.js} +1 -1
- package/build/runtime-chunk-J7PATUZB.js.br +0 -0
- package/build/runtime-chunk-J7PATUZB.js.gz +0 -0
- package/build/{runtime-chunk-4V5TXNXJ.js → runtime-chunk-JG2BIKFJ.js} +1 -1
- package/build/runtime-chunk-JG2BIKFJ.js.br +0 -0
- package/build/runtime-chunk-JG2BIKFJ.js.gz +0 -0
- package/build/{runtime-chunk-HHD6T7VQ.js → runtime-chunk-KEZBCRGD.js} +1 -1
- package/build/runtime-chunk-KEZBCRGD.js.br +0 -0
- package/build/runtime-chunk-KEZBCRGD.js.gz +0 -0
- package/build/{runtime-chunk-CPUOTSE4.js → runtime-chunk-LCSOYUIO.js} +1 -1
- package/build/runtime-chunk-LCSOYUIO.js.br +0 -0
- package/build/runtime-chunk-LCSOYUIO.js.gz +0 -0
- package/build/{runtime-chunk-SYMB7MAJ.js → runtime-chunk-LWTG4KKU.js} +1 -1
- package/build/runtime-chunk-LWTG4KKU.js.br +0 -0
- package/build/runtime-chunk-LWTG4KKU.js.gz +0 -0
- package/build/{runtime-chunk-MKF4O6NE.js → runtime-chunk-NJWB6KRU.js} +1 -1
- package/build/runtime-chunk-NJWB6KRU.js.br +0 -0
- package/build/runtime-chunk-NJWB6KRU.js.gz +0 -0
- package/build/{runtime-chunk-FE6LJAWO.js → runtime-chunk-NUYZG4J5.js} +1 -1
- package/build/runtime-chunk-NUYZG4J5.js.br +0 -0
- package/build/runtime-chunk-NUYZG4J5.js.gz +0 -0
- package/build/{runtime-chunk-P2SCYWSA.js → runtime-chunk-Q4VT24EQ.js} +1 -1
- package/build/runtime-chunk-Q4VT24EQ.js.br +0 -0
- package/build/runtime-chunk-Q4VT24EQ.js.gz +0 -0
- package/build/{runtime-chunk-J5V6MXHA.js → runtime-chunk-QACID2T6.js} +1 -1
- package/build/runtime-chunk-QACID2T6.js.br +0 -0
- package/build/runtime-chunk-QACID2T6.js.gz +0 -0
- package/build/{runtime-chunk-6NCR62TU.js → runtime-chunk-TBGDUUHD.js} +1 -1
- package/build/runtime-chunk-TBGDUUHD.js.br +0 -0
- package/build/runtime-chunk-TBGDUUHD.js.gz +0 -0
- package/build/{runtime-chunk-7XPMJMA4.js → runtime-chunk-TCS5UKOO.js} +1 -1
- package/build/runtime-chunk-TCS5UKOO.js.br +0 -0
- package/build/runtime-chunk-TCS5UKOO.js.gz +0 -0
- package/build/{runtime-chunk-MNNEA4BS.js → runtime-chunk-VMYU6U65.js} +1 -1
- package/build/{runtime-chunk-MNNEA4BS.js.br → runtime-chunk-VMYU6U65.js.br} +0 -0
- package/build/{runtime-chunk-MNNEA4BS.js.gz → runtime-chunk-VMYU6U65.js.gz} +0 -0
- package/build/{runtime-chunk-3JDUKLJO.js → runtime-chunk-VSCZ2CID.js} +1 -1
- package/build/runtime-chunk-VSCZ2CID.js.br +0 -0
- package/build/runtime-chunk-VSCZ2CID.js.gz +0 -0
- package/build/{runtime-chunk-SYERXJET.js → runtime-chunk-VTESKRFG.js} +1 -1
- package/build/runtime-chunk-VTESKRFG.js.br +0 -0
- package/build/runtime-chunk-VTESKRFG.js.gz +0 -0
- package/build/{runtime-chunk-ZXAHJ75S.js → runtime-chunk-W6TU36QZ.js} +1 -1
- package/build/runtime-chunk-W6TU36QZ.js.br +0 -0
- package/build/runtime-chunk-W6TU36QZ.js.gz +0 -0
- package/build/{runtime-chunk-UVOO7ZT4.js → runtime-chunk-ZOVWUNB5.js} +1 -1
- package/build/runtime-chunk-ZOVWUNB5.js.br +0 -0
- package/build/runtime-chunk-ZOVWUNB5.js.gz +0 -0
- package/build/{runtime-classicRuntime-SLXBBQD6.js → runtime-classicRuntime-QIND2XG7.js} +1 -1
- package/build/runtime-classicRuntime-QIND2XG7.js.br +0 -0
- package/build/runtime-classicRuntime-QIND2XG7.js.gz +0 -0
- package/build/{runtime-cloners-GSRVTDMO.js → runtime-cloners-7DFOFFFE.js} +1 -1
- package/build/runtime-cloners-7DFOFFFE.js.br +0 -0
- package/build/runtime-cloners-7DFOFFFE.js.gz +0 -0
- package/build/{runtime-components-Y56CTYTL.js → runtime-components-EYW5JZJP.js} +1 -1
- package/build/runtime-components-EYW5JZJP.js.br +0 -0
- package/build/runtime-components-EYW5JZJP.js.gz +0 -0
- package/build/{runtime-createDestroy-SFX2RTKV.js → runtime-createDestroy-WKC4U7RM.js} +1 -1
- package/build/runtime-createDestroy-WKC4U7RM.js.br +0 -0
- package/build/runtime-createDestroy-WKC4U7RM.js.gz +0 -0
- package/build/{runtime-depthOfField-FSCU6657.js → runtime-depthOfField-TKJ3L3L6.js} +1 -1
- package/build/runtime-depthOfField-TKJ3L3L6.js.br +0 -0
- package/build/runtime-depthOfField-TKJ3L3L6.js.gz +0 -0
- package/build/{runtime-dragDrop-27SBMNBE.js → runtime-dragDrop-46EDADR3.js} +1 -1
- package/build/runtime-dragDrop-46EDADR3.js.br +0 -0
- package/build/runtime-dragDrop-46EDADR3.js.gz +0 -0
- package/build/{runtime-gameControls-5YZGQGXP.js → runtime-gameControls-LB7IYQTA.js} +1 -1
- package/build/runtime-gameControls-LB7IYQTA.js.br +0 -0
- package/build/runtime-gameControls-LB7IYQTA.js.gz +0 -0
- package/build/{runtime-hair-ZIM6UNV4.js → runtime-hair-OPLMI5B4.js} +1 -1
- package/build/runtime-hair-OPLMI5B4.js.br +2 -0
- package/build/runtime-hair-OPLMI5B4.js.gz +0 -0
- package/build/{runtime-hueSaturation-XQ5EL5BG.js → runtime-hueSaturation-R4Q5KEHL.js} +1 -1
- package/build/runtime-hueSaturation-R4Q5KEHL.js.br +0 -0
- package/build/runtime-hueSaturation-R4Q5KEHL.js.gz +0 -0
- package/build/{runtime-mergeStaticGeometries-ZRBFU54U.js → runtime-mergeStaticGeometries-FMD6PINY.js} +1 -1
- package/build/runtime-mergeStaticGeometries-FMD6PINY.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-FMD6PINY.js.gz +0 -0
- package/build/{runtime-miscActions-XMK3TZBH.js → runtime-miscActions-WMTDD4NV.js} +1 -1
- package/build/runtime-miscActions-WMTDD4NV.js.br +0 -0
- package/build/runtime-miscActions-WMTDD4NV.js.gz +0 -0
- package/build/{runtime-mouseHover-AGKPVIUM.js → runtime-mouseHover-ZFP5J7LV.js} +1 -1
- package/build/runtime-mouseHover-ZFP5J7LV.js.br +0 -0
- package/build/runtime-mouseHover-ZFP5J7LV.js.gz +0 -0
- package/build/{runtime-noise-TDWTUDHY.js → runtime-noise-CBW6QXMM.js} +1 -1
- package/build/runtime-noise-CBW6QXMM.js.br +0 -0
- package/build/runtime-noise-CBW6QXMM.js.gz +0 -0
- package/build/{runtime-particles-ZRFSOSEG.js → runtime-particles-TK4ZA6YY.js} +1 -1
- package/build/runtime-particles-TK4ZA6YY.js.br +0 -0
- package/build/runtime-particles-TK4ZA6YY.js.gz +0 -0
- package/build/{runtime-paths-6RNGGV7E.js → runtime-paths-DFKIAMJG.js} +1 -1
- package/build/runtime-paths-DFKIAMJG.js.br +0 -0
- package/build/runtime-paths-DFKIAMJG.js.gz +0 -0
- package/build/{runtime-pixelation-5KEV5HW3.js → runtime-pixelation-XVBAFZOR.js} +1 -1
- package/build/runtime-pixelation-XVBAFZOR.js.br +0 -0
- package/build/runtime-pixelation-XVBAFZOR.js.gz +0 -0
- package/build/{runtime-resize-MY642YD3.js → runtime-resize-IISRT4P3.js} +1 -1
- package/build/runtime-resize-IISRT4P3.js.br +0 -0
- package/build/runtime-resize-IISRT4P3.js.gz +0 -0
- package/build/{runtime-sceneTransition-NX27VMTV.js → runtime-sceneTransition-OVSEHFVZ.js} +1 -1
- package/build/runtime-sceneTransition-OVSEHFVZ.js.br +0 -0
- package/build/runtime-sceneTransition-OVSEHFVZ.js.gz +0 -0
- package/build/{runtime-scroll-TYLUXBDA.js → runtime-scroll-YQKYY4PW.js} +1 -1
- package/build/runtime-scroll-YQKYY4PW.js.br +0 -0
- package/build/runtime-scroll-YQKYY4PW.js.gz +0 -0
- package/build/runtime-shapeBlends-PBLOHKF5.js +1 -0
- package/build/runtime-shapeBlends-PBLOHKF5.js.br +2 -0
- package/build/runtime-shapeBlends-PBLOHKF5.js.gz +0 -0
- package/build/{runtime-text-S7OY5BUY.js → runtime-text-MDPTXATE.js} +1 -1
- package/build/runtime-text-MDPTXATE.js.br +0 -0
- package/build/runtime-text-MDPTXATE.js.gz +0 -0
- package/build/{runtime-textInputs-LWQLRFYB.js → runtime-textInputs-CAN275YC.js} +1 -1
- package/build/runtime-textInputs-CAN275YC.js.br +0 -0
- package/build/runtime-textInputs-CAN275YC.js.gz +0 -0
- package/build/{runtime-timeline-ILU3EFT3.js → runtime-timeline-UCKX2Z3Q.js} +1 -1
- package/build/runtime-timeline-UCKX2Z3Q.js.br +0 -0
- package/build/runtime-timeline-UCKX2Z3Q.js.gz +0 -0
- package/build/{runtime-tracking-A5IUWTDB.js → runtime-tracking-YEQX4VL5.js} +1 -1
- package/build/runtime-tracking-YEQX4VL5.js.br +0 -0
- package/build/runtime-tracking-YEQX4VL5.js.gz +0 -0
- package/build/{runtime-transitions-3AZHFSE7.js → runtime-transitions-FLR2BSUT.js} +1 -1
- package/build/runtime-transitions-FLR2BSUT.js.br +0 -0
- package/build/runtime-transitions-FLR2BSUT.js.gz +0 -0
- package/build/{runtime-ui2d-STGPA3ZZ.js → runtime-ui2d-7OLW4IOC.js} +1 -1
- package/build/runtime-ui2d-7OLW4IOC.js.br +0 -0
- package/build/runtime-ui2d-7OLW4IOC.js.gz +0 -0
- package/build/{runtime-vectorShapes-XAORLE2Z.js → runtime-vectorShapes-LON6G7BQ.js} +1 -1
- package/build/runtime-vectorShapes-LON6G7BQ.js.br +0 -0
- package/build/runtime-vectorShapes-LON6G7BQ.js.gz +0 -0
- package/build/{runtime-vignette-64Z4S2UX.js → runtime-vignette-XPXLG3XU.js} +1 -1
- package/build/runtime-vignette-XPXLG3XU.js.br +0 -0
- package/build/runtime-vignette-XPXLG3XU.js.gz +0 -0
- package/build/runtime-webgpu-DET7EG6Z.js +1 -0
- package/build/runtime-webgpu-DET7EG6Z.js.br +0 -0
- package/build/runtime-webgpu-DET7EG6Z.js.gz +0 -0
- package/build/runtime.cjs +7 -7
- package/build/runtime.js +1 -1
- package/build/runtime.js.br +0 -0
- package/build/runtime.js.gz +0 -0
- package/build/runtime.standalone.js +1 -1
- package/build/runtime.standalone.js.br +0 -0
- package/build/runtime.standalone.js.gz +0 -0
- package/build/runtime.standalone.webgl.js +1 -1
- package/build/runtime.standalone.webgl.js.br +0 -0
- package/build/runtime.standalone.webgl.js.gz +0 -0
- package/build/runtime.standalone.webgpu.js +1 -1
- package/build/runtime.standalone.webgpu.js.br +0 -0
- package/build/runtime.standalone.webgpu.js.gz +0 -0
- package/build/runtime.standalone.webgpu.micro.js +1 -1
- package/build/runtime.standalone.webgpu.micro.js.br +0 -0
- package/build/runtime.standalone.webgpu.micro.js.gz +0 -0
- package/build/runtime.standalone.webgpu.min.js +1 -1
- package/build/runtime.standalone.webgpu.min.js.br +0 -0
- package/build/runtime.standalone.webgpu.min.js.gz +0 -0
- package/package.json +1 -1
- package/build/runtime-bloom-PRPXZIUW.js.br +0 -0
- package/build/runtime-bloom-PRPXZIUW.js.gz +0 -0
- package/build/runtime-brightnessContrast-KDB5RYJA.js.br +0 -0
- package/build/runtime-brightnessContrast-KDB5RYJA.js.gz +0 -0
- package/build/runtime-chromaticAberration-PZW4SDDS.js.br +0 -0
- package/build/runtime-chromaticAberration-PZW4SDDS.js.gz +0 -0
- package/build/runtime-chunk-3JDUKLJO.js.br +0 -1
- package/build/runtime-chunk-3JDUKLJO.js.gz +0 -0
- package/build/runtime-chunk-3SMB7GWC.js.br +0 -0
- package/build/runtime-chunk-3SMB7GWC.js.gz +0 -0
- package/build/runtime-chunk-4V5TXNXJ.js.br +0 -0
- package/build/runtime-chunk-4V5TXNXJ.js.gz +0 -0
- package/build/runtime-chunk-6NCR62TU.js.br +0 -0
- package/build/runtime-chunk-6NCR62TU.js.gz +0 -0
- package/build/runtime-chunk-7XPMJMA4.js.br +0 -0
- package/build/runtime-chunk-7XPMJMA4.js.gz +0 -0
- package/build/runtime-chunk-ACYKJPOE.js.br +0 -0
- package/build/runtime-chunk-ACYKJPOE.js.gz +0 -0
- package/build/runtime-chunk-CPUOTSE4.js.br +0 -0
- package/build/runtime-chunk-CPUOTSE4.js.gz +0 -0
- package/build/runtime-chunk-EXQOXWMA.js.br +0 -0
- package/build/runtime-chunk-EXQOXWMA.js.gz +0 -0
- package/build/runtime-chunk-FE6LJAWO.js.br +0 -0
- package/build/runtime-chunk-FE6LJAWO.js.gz +0 -0
- package/build/runtime-chunk-HHD6T7VQ.js.br +0 -0
- package/build/runtime-chunk-HHD6T7VQ.js.gz +0 -0
- package/build/runtime-chunk-IAUJFHKI.js.br +0 -0
- package/build/runtime-chunk-IAUJFHKI.js.gz +0 -0
- package/build/runtime-chunk-J5V6MXHA.js.br +0 -0
- package/build/runtime-chunk-J5V6MXHA.js.gz +0 -0
- package/build/runtime-chunk-KL4ASGPT.js.br +0 -0
- package/build/runtime-chunk-KL4ASGPT.js.gz +0 -0
- package/build/runtime-chunk-LCBCIXFO.js.br +0 -0
- package/build/runtime-chunk-LCBCIXFO.js.gz +0 -0
- package/build/runtime-chunk-MKF4O6NE.js.br +0 -0
- package/build/runtime-chunk-MKF4O6NE.js.gz +0 -0
- package/build/runtime-chunk-OGKACVH6.js.br +0 -0
- package/build/runtime-chunk-OGKACVH6.js.gz +0 -0
- package/build/runtime-chunk-OXRGQN3K.js.br +0 -0
- package/build/runtime-chunk-OXRGQN3K.js.gz +0 -0
- package/build/runtime-chunk-P2SCYWSA.js.br +0 -0
- package/build/runtime-chunk-P2SCYWSA.js.gz +0 -0
- package/build/runtime-chunk-PYIDRIXX.js.br +0 -0
- package/build/runtime-chunk-PYIDRIXX.js.gz +0 -0
- package/build/runtime-chunk-SPW5ZAC2.js.gz +0 -0
- package/build/runtime-chunk-SYERXJET.js.br +0 -0
- package/build/runtime-chunk-SYERXJET.js.gz +0 -0
- package/build/runtime-chunk-SYMB7MAJ.js.br +0 -0
- package/build/runtime-chunk-SYMB7MAJ.js.gz +0 -0
- package/build/runtime-chunk-TRWD4WLH.js.br +0 -0
- package/build/runtime-chunk-TRWD4WLH.js.gz +0 -0
- package/build/runtime-chunk-UVOO7ZT4.js.br +0 -0
- package/build/runtime-chunk-UVOO7ZT4.js.gz +0 -0
- package/build/runtime-chunk-ZXAHJ75S.js.br +0 -0
- package/build/runtime-chunk-ZXAHJ75S.js.gz +0 -0
- package/build/runtime-classicRuntime-SLXBBQD6.js.br +0 -0
- package/build/runtime-classicRuntime-SLXBBQD6.js.gz +0 -0
- package/build/runtime-cloners-GSRVTDMO.js.br +0 -0
- package/build/runtime-cloners-GSRVTDMO.js.gz +0 -0
- package/build/runtime-components-Y56CTYTL.js.br +0 -0
- package/build/runtime-components-Y56CTYTL.js.gz +0 -0
- package/build/runtime-createDestroy-SFX2RTKV.js.br +0 -0
- package/build/runtime-createDestroy-SFX2RTKV.js.gz +0 -0
- package/build/runtime-depthOfField-FSCU6657.js.br +0 -0
- package/build/runtime-depthOfField-FSCU6657.js.gz +0 -0
- package/build/runtime-dragDrop-27SBMNBE.js.br +0 -0
- package/build/runtime-dragDrop-27SBMNBE.js.gz +0 -0
- package/build/runtime-gameControls-5YZGQGXP.js.br +0 -0
- package/build/runtime-gameControls-5YZGQGXP.js.gz +0 -0
- package/build/runtime-hair-ZIM6UNV4.js.br +0 -2
- package/build/runtime-hair-ZIM6UNV4.js.gz +0 -0
- package/build/runtime-hueSaturation-XQ5EL5BG.js.br +0 -0
- package/build/runtime-hueSaturation-XQ5EL5BG.js.gz +0 -0
- package/build/runtime-mergeStaticGeometries-ZRBFU54U.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-ZRBFU54U.js.gz +0 -0
- package/build/runtime-miscActions-XMK3TZBH.js.br +0 -0
- package/build/runtime-miscActions-XMK3TZBH.js.gz +0 -0
- package/build/runtime-mouseHover-AGKPVIUM.js.br +0 -0
- package/build/runtime-mouseHover-AGKPVIUM.js.gz +0 -0
- package/build/runtime-noise-TDWTUDHY.js.br +0 -0
- package/build/runtime-noise-TDWTUDHY.js.gz +0 -0
- package/build/runtime-particles-ZRFSOSEG.js.br +0 -0
- package/build/runtime-particles-ZRFSOSEG.js.gz +0 -0
- package/build/runtime-paths-6RNGGV7E.js.br +0 -0
- package/build/runtime-paths-6RNGGV7E.js.gz +0 -0
- package/build/runtime-pixelation-5KEV5HW3.js.br +0 -0
- package/build/runtime-pixelation-5KEV5HW3.js.gz +0 -0
- package/build/runtime-resize-MY642YD3.js.br +0 -0
- package/build/runtime-resize-MY642YD3.js.gz +0 -0
- package/build/runtime-sceneTransition-NX27VMTV.js.br +0 -0
- package/build/runtime-sceneTransition-NX27VMTV.js.gz +0 -0
- package/build/runtime-scroll-TYLUXBDA.js.br +0 -0
- package/build/runtime-scroll-TYLUXBDA.js.gz +0 -0
- package/build/runtime-shapeBlends-KK5ZO6TU.js +0 -1
- package/build/runtime-shapeBlends-KK5ZO6TU.js.br +0 -3
- package/build/runtime-shapeBlends-KK5ZO6TU.js.gz +0 -0
- package/build/runtime-text-S7OY5BUY.js.br +0 -0
- package/build/runtime-text-S7OY5BUY.js.gz +0 -0
- package/build/runtime-textInputs-LWQLRFYB.js.br +0 -0
- package/build/runtime-textInputs-LWQLRFYB.js.gz +0 -0
- package/build/runtime-timeline-ILU3EFT3.js.br +0 -0
- package/build/runtime-timeline-ILU3EFT3.js.gz +0 -0
- package/build/runtime-tracking-A5IUWTDB.js.br +0 -0
- package/build/runtime-tracking-A5IUWTDB.js.gz +0 -0
- package/build/runtime-transitions-3AZHFSE7.js.br +0 -0
- package/build/runtime-transitions-3AZHFSE7.js.gz +0 -0
- package/build/runtime-ui2d-STGPA3ZZ.js.br +0 -0
- package/build/runtime-ui2d-STGPA3ZZ.js.gz +0 -0
- package/build/runtime-vectorShapes-XAORLE2Z.js.br +0 -0
- package/build/runtime-vectorShapes-XAORLE2Z.js.gz +0 -0
- package/build/runtime-vignette-64Z4S2UX.js.br +0 -0
- package/build/runtime-vignette-64Z4S2UX.js.gz +0 -0
- package/build/runtime-webgpu-SJAKZ2XK.js +0 -1
- package/build/runtime-webgpu-SJAKZ2XK.js.br +0 -0
- package/build/runtime-webgpu-SJAKZ2XK.js.gz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as t}from"./runtime-chunk-3SMB7GWC.js";import{b as e}from"./runtime-chunk-PYIDRIXX.js";import{H as r,ea as i}from"./runtime-chunk-UVOO7ZT4.js";import{f as n,v as s}from"./runtime-chunk-OOOV6H7H.js";import{c as o}from"./runtime-chunk-RTLL6WIB.js";import{c as a}from"./runtime-chunk-2PT2WH66.js";import{L as l}from"./runtime-chunk-NY4SLVL4.js";import{Ec as h,Gc as c,Hc as d,Qc as u,Rc as p,Tc as m,Yc as f,sd as y}from"./runtime-chunk-KPOUV3HD.js";import{a as b,b as g}from"./runtime-chunk-ML3Z74BL.js";var x=g(b((t,e)=>{var r,i;r=t,i=function(){return t.importState=function(e){var r=new t;return r.importState(e),r},t;function t(){return function(t){var e=0,r=0,i=0,n=1;0==t.length&&(t=[+new Date]);var s=function(){var t=4022871197,e=function(e){e=e.toString();for(var r=0;r<e.length;r++){var i=.02519603282416938*(t+=e.charCodeAt(r));i-=t=i>>>0,t=(i*=t)>>>0,t+=4294967296*(i-=t)}return 2.3283064365386963e-10*(t>>>0)};return e.version="Mash 0.9",e}();e=s(" "),r=s(" "),i=s(" ");for(var o=0;o<t.length;o++)(e-=s(t[o]))<0&&(e+=1),(r-=s(t[o]))<0&&(r+=1),(i-=s(t[o]))<0&&(i+=1);s=null;var a=function(){var t=2091639*e+2.3283064365386963e-10*n;return e=r,r=i,i=t-(n=0|t)};return a.next=a,a.uint32=function(){return 4294967296*a()},a.fract53=function(){return a()+11102230246251565e-32*(2097152*a()|0)},a.version="Alea 0.9",a.args=t,a.exportState=function(){return[e,r,i,n]},a.importState=function(t){e=+t[0]||0,r=+t[1]||0,i=+t[2]||0,n=+t[3]||0},a}(Array.prototype.slice.call(arguments))}},"object"==typeof t?e.exports=i():"function"==typeof define&&define.amd?define(i):r.Alea=i()})()),v=.5*(Math.sqrt(3)-1),M=(3-Math.sqrt(3))/6,w=1/3,S=1/6,j=(Math.sqrt(5),Math.sqrt(5),t=>0|Math.floor(t)),A=new Float64Array([1,1,-1,1,1,-1,-1,-1,1,0,-1,0,1,0,-1,0,0,1,0,-1,0,1,0,-1]),F=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function _(t){let e=new Uint8Array(512);for(let t=0;t<256;t++)e[t]=t;for(let r=0;r<255;r++){let i=r+~~(t()*(256-r)),n=e[r];e[r]=e[i],e[i]=n}for(let t=256;t<512;t++)e[t]=e[t-256];return e}var O=new f,z=class{constructor(t){this.weightAttribute=null;let e=t.geometry;if(!e.isBufferGeometry||3!==e.attributes.position.itemSize)throw new Error("THREE.MeshSurfaceSampler: Requires BufferGeometry triangle mesh.");e.index&&(e=e.toNonIndexed()),this.geometry=e,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute("position"),this.distribution=null}build(){let t=this.positionAttribute,e=new Float32Array(t.count/3);for(let r=0;r<t.count;r+=3){let i=1;O.a.fromBufferAttribute(t,r),O.b.fromBufferAttribute(t,r+1),O.c.fromBufferAttribute(t,r+2),i*=O.getArea(),e[r/3]=i}this.distribution=new Float32Array(t.count/3);let r=0;for(let t=0;t<e.length;t++)r+=e[t],this.distribution[t]=r;return this}setRandomGenerator(t){return this.randomFunction=t,this}sample(t,e){if(this.distribution){let r=this.distribution[this.distribution.length-1],i=this.binarySearch(this.randomFunction()*r);return this.sampleFace(i,t,e)}}binarySearch(t){if(!this.distribution)return 0;let e=this.distribution,r=0,i=e.length-1,n=-1;for(;r<=i;){let s=Math.ceil((r+i)/2);if(0===s||e[s-1]<=t&&e[s]>t){n=s;break}t<e[s]?i=s-1:r=s+1}return n}sampleFace(t,e,r){let i=this.randomFunction(),n=this.randomFunction();return i+n>1&&(i=1-i,n=1-n),O.a.fromBufferAttribute(this.positionAttribute,3*t),O.b.fromBufferAttribute(this.positionAttribute,3*t+1),O.c.fromBufferAttribute(this.positionAttribute,3*t+2),e.set(0,0,0).addScaledVector(O.a,i).addScaledVector(O.b,n).addScaledVector(O.c,1-(i+n)),O.getNormal(r),this}},C={x:[1,0,0],"-x":[-1,0,0],y:[0,1,0],"-y":[0,-1,0],z:[0,0,1],"-z":[0,0,-1]},W={polygon_center:0,edge:1,vertex:2},N=(t,e)=>(r,i)=>e&&0!==r&&0!==t?t*i/100:0,P=(t,e)=>{let r=Math.abs(e),i=-1*r;return(t- -1)*(r-i)/2+i},T=new d,V=new d,k=new d,B=new d;function I(t,e){let r=k.fromArray(t),i=B.fromArray(e);V.copy(i).sub(r);let n=V.length();return V.normalize().multiplyScalar(.5*n),T.copy(r).add(V).toArray()}var R,U,D,L,q=new f,E=new d,G=new d,H=new d,$=class extends y{},Y=class extends ${constructor(t,e){super(void 0,void 0,e),this.source=t,this.isClonerInstancedMesh=!0,this.pivotMatrix=new u,this.previousModelViewMatrix=new u,this.copyPreviousMatrix=!0,this.capacity=e,this.count=0,this.matrixAutoUpdate=!1}raycast(t,e){}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorld.multiply(this.pivotMatrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(let e of this.children)e.updateMatrixWorld(t)}updateWorldMatrix(t,e){let r=this.parent;if(t&&null!==r&&r.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorld.multiply(this.pivotMatrix),e)for(let t of this.children)t.updateWorldMatrix(!1,!0)}onAfterRender(t,e,r,i,n,s){this.copyPreviousMatrix&&this.previousModelViewMatrix.copy(this.modelViewMatrix)}get visible(){return!0!==this.source.cloner?.insideBoolean&&(this.source.visible||this.source.dataPatched.visible&&!0===this.source.dataPatched.cloner?.hideBase)}set visible(t){}get castShadow(){return this.source.castShadow}set castShadow(t){}get receiveShadow(){return this.source.receiveShadow}set receiveShadow(t){}get layers(){return this.source.layers}set layers(t){}get geometry(){return this.source.geometry}set geometry(t){}get material(){return this.source.material}set material(t){}get morphTargetInfluences(){return this.source.morphTargetInfluences}set morphTargetInfluences(t){}},Q=t=>.5*(1-Math.cos(t*Math.PI)),X=class{constructor(){this.perlin=new Array(4096)}noise(t,e=0,r=0){if(null==this.perlin){this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=Math.random()}t<0&&(t=-t),e<0&&(e=-e),r<0&&(r=-r);let i,n,s,o,a,l=Math.floor(t),h=Math.floor(e),c=Math.floor(r),d=t-l,u=e-h,p=r-c,m=0,f=.5;for(let t=0;t<4;t++){let t=l+(h<<4)+(c<<8);i=Q(d),n=Q(u),s=this.perlin[4095&t],s+=i*(this.perlin[t+1&4095]-s),o=this.perlin[t+16&4095],o+=i*(this.perlin[t+16+1&4095]-o),s+=n*(o-s),t+=256,o=this.perlin[4095&t],o+=i*(this.perlin[t+1&4095]-o),a=this.perlin[t+16&4095],a+=i*(this.perlin[t+16+1&4095]-a),o+=n*(a-o),s+=Q(p)*(o-s),m+=s*f,f*=.5,l<<=1,d*=2,h<<=1,u*=2,c<<=1,p*=2,d>=1&&(l++,d--),u>=1&&(h++,u--),p>=1&&(c++,p--)}return m}noiseSeed(t){let e=(()=>{let t,e;return{setSeed(r){e=t=(r??4294967296*Math.random())>>>0},getSeed:()=>t,rand:()=>(e=(1664525*e+1013904223)%4294967296,e/4294967296)}})();e.setSeed(t),this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=e.rand()}},Z=1e-4,K=new d,J=new d;r.then(t=>{U=[(R=t).get_face_center,R.get_edge_midpoint,R.get_vertex_position],D=[R.get_face_normal,R.get_edge_normal,R.get_vertex_normal],L=[R.face_count,R.edge_count,R.vertex_count]}),new u;var tt=new u,et=new u,rt=new u,it=new u,nt=new u,st=new u,ot=new d,at=new d,lt=new d,ht=new d,ct=new d,dt=new d,ut=new d,pt=new d,mt=new d,ft=new d,yt=new d,bt=new p,gt=new c;function xt(t){return t?t.version??t.data?.version??0:-1}function vt(t,e){return["number"==typeof t?.[0]?t[0]:"string"==typeof t?.[0]&&e?parseFloat(String(e.shared.getVariable(t[0])??"0")):0,"number"==typeof t?.[1]?t[1]:"string"==typeof t?.[1]&&e?parseFloat(String(e.shared.getVariable(t[1])??"0")):0,"number"==typeof t?.[2]?t[2]:"string"==typeof t?.[2]&&e?parseFloat(String(e.shared.getVariable(t[2])??"0")):0]}var Mt=class{constructor(t,e){this.data=t,this.is3D=e,this.perlin=new X,"perlin"===t.noiseType?(this.perlin.noiseSeed(t.seed),this.noise=e?(t,e,r)=>this.perlin.noise(t,e,r):t=>this.perlin.noise(t)):this.noise=e?function(t=Math.random){let e=_(t),r=new Float64Array(e).map(t=>F[t%12*3]),i=new Float64Array(e).map(t=>F[t%12*3+1]),n=new Float64Array(e).map(t=>F[t%12*3+2]);return function(t,s,o){let a,l,h,c,d,u,p,m,f,y,b=(t+s+o)*w,g=j(t+b),x=j(s+b),v=j(o+b),M=(g+x+v)*S,A=t-(g-M),F=s-(x-M),_=o-(v-M);A>=F?F>=_?(d=1,u=0,p=0,m=1,f=1,y=0):A>=_?(d=1,u=0,p=0,m=1,f=0,y=1):(d=0,u=0,p=1,m=1,f=0,y=1):F<_?(d=0,u=0,p=1,m=0,f=1,y=1):A<_?(d=0,u=1,p=0,m=0,f=1,y=1):(d=0,u=1,p=0,m=1,f=1,y=0);let O=A-d+S,z=F-u+S,C=_-p+S,W=A-m+2*S,N=F-f+2*S,P=_-y+2*S,T=A-1+.5,V=F-1+.5,k=_-1+.5,B=255&g,I=255&x,R=255&v,U=.6-A*A-F*F-_*_;if(U<0)a=0;else{let t=B+e[I+e[R]];U*=U,a=U*U*(r[t]*A+i[t]*F+n[t]*_)}let D=.6-O*O-z*z-C*C;if(D<0)l=0;else{let t=B+d+e[I+u+e[R+p]];D*=D,l=D*D*(r[t]*O+i[t]*z+n[t]*C)}let L=.6-W*W-N*N-P*P;if(L<0)h=0;else{let t=B+m+e[I+f+e[R+y]];L*=L,h=L*L*(r[t]*W+i[t]*N+n[t]*P)}let q=.6-T*T-V*V-k*k;if(q<0)c=0;else{let t=B+1+e[I+1+e[R+1]];q*=q,c=q*q*(r[t]*T+i[t]*V+n[t]*k)}return 32*(a+l+h+c)}}((0,x.default)(t.seed)):function(t=Math.random){let e=_(t),r=new Float64Array(e).map(t=>A[t%12*2]),i=new Float64Array(e).map(t=>A[t%12*2+1]);return function(t,n){let s,o,a=0,l=0,h=0,c=(t+n)*v,d=j(t+c),u=j(n+c),p=(d+u)*M,m=t-(d-p),f=n-(u-p);m>f?(s=1,o=0):(s=0,o=1);let y=m-s+M,b=f-o+M,g=m-1+2*M,x=f-1+2*M,w=255&d,S=255&u,A=.5-m*m-f*f;if(A>=0){let t=w+e[S];A*=A,a=A*A*(r[t]*m+i[t]*f)}let F=.5-y*y-b*b;if(F>=0){let t=w+s+e[S+o];F*=F,l=F*F*(r[t]*y+i[t]*b)}let _=.5-g*g-x*x;if(_>=0){let t=w+1+e[S+1];_*=_,h=_*_*(r[t]*g+i[t]*x)}return 70*(a+l+h)}}((0,x.default)(t.seed??""))}},wt=class extends(n(m)){constructor(t,e){super(),this.parameters=e,this.isCloner=!0,this.objectForSample=void 0,this._pendingMediaLoad=!1,this.random=null,this.surfaceSamplerCache=null,this.surfacePointsCache=null,this.object=t}resetOnMove(){this.removeFromParent(),this.parent=null}removeFromParent(){return super.removeFromParent(),this.instancedMesh?.removeFromParent(),this}dispose(){this.removeFromParent(),this._disposeInstancedMesh(),this._invalidateBoolean()}_invalidateBoolean(){this.object instanceof s&&this.object.onClonerLayoutUpdated()}expandClones(t){if(null===this.parent)this.updateState(this.parameters,t);else{for(let t of this.children)t instanceof i&&t.expand();this._syncInstancedMesh()}}invalidateTransform(t){this.matrixWorldNeedsUpdate=!0}onObjUpdateMatrix(){"toObject"!==this.parameters.type&&(this.matrixWorldNeedsUpdate=!0)}update(t){switch(this._updateCount(t),this.parameters.type){case"radial":this._updateRadial(this.parameters,t);break;case"linear":this._updateLinear(this.parameters,t);break;case"grid":this._updateGrid(this.parameters,t);break;case"toObject":this._updateToObject(this.parameters,t)}for(let t of this.children){let e=t.transformOverride;void 0!==e&&(t.position.fromArray(e.position),t.rotation.fromArray(e.rotation),t.scale.fromArray(e.scale)),t.updateMatrix(),t.hasNonUniformScale&&(t.updateMatrixWorld(),t.updateMatrixWorldRigid())}this._syncInstancedMesh(),this._invalidateBoolean()}get instancingActive(){return void 0!==this.instancedMesh}get insideBoolean(){return null!==this.parent&&"booleanOp"in this.parent}_instancingEligible(){if(!0!==this.parameters.instanced)return!1;let t=this.object;return!(t.entityChildrenCount()>0||!0!==t.isMesh||a(t)||!0===t.isDecalObject)}_syncInstancedMesh(){if(!this._instancingEligible())return void this._disposeInstancedMesh();let t=this.instancedMesh;if(void 0!==t&&t.capacity<this.children.length&&(this._disposeInstancedMesh(),t=void 0),void 0===t){let e=Math.max(8,Math.ceil(1.5*this.children.length));t=this.instancedMesh=new Y(this.object,e)}t.matrix=this.matrix,t.matrixWorldNeedsUpdate=!0,t.parent!==this.parent&&(t.removeFromParent(),this.parent?.add(t)),this.syncInstanceMatrices()}syncInstanceMatrices(){this._invalidateBoolean();let t=this.instancedMesh;if(void 0===t)return;let e=0;for(let r of this.children)!1!==r.playModeVisible&&(et.copy(r.matrix).multiply(r.pivotMatrix),t.setMatrixAt(e++,et));t.count=e,t.instanceMatrix.needsUpdate=!0,t.boundingSphere=null}_disposeInstancedMesh(){let t=this.instancedMesh;void 0!==t&&(this.instancedMesh=void 0,t.removeFromParent(),t.dispose())}_updateCount(t,e){let r;if(void 0!==e)r=e;else{let e=vt(this.parameters.grid.count,t);r="grid"===this.parameters.type?Math.round(e[0])*Math.round(e[1])*Math.round(e[2]):this.parameters.count}if("toObject"===this.parameters.type)if(this.parameters.toObject.object){if(void 0===e&&"random"!==this.parameters.toObject.spreadType)return}else r=0;if(this.children.length!==r)if(this.children.length<r)for(let t=0,e=r-this.children.length;t<e;++t){let t=new i(this.object);t.expand(),this.add(t)}else for(;this.children.length>r;){let t=this.children.pop();t.parent=null,t.dispatchEvent({type:"removed"}),this.dispatchEvent({type:"childremoved",child:t})}}getRandom(t,e=!1){return(null===this.random||this.random.data.seed!==t.seed||this.random.data.noiseType!==t.noiseType||this.random.is3D!==e)&&(this.random=new Mt(t,e)),this.random}_updateRadial(t,e){let r,i=t.radial,n=i.start*h.DEG2RAD,s=n-i.end*h.DEG2RAD,o=vt(i.rotation,e),a=new p(o[0],o[1],o[2]);switch(i.axis){case"z":r=new d(0,0,1);break;case"y":r=new d(0,1,0);break;default:r=new d(1,0,0)}let c=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,u=!0===this.parameters.randomness&&0!==c.strength?this.getRandom(c):null,m=vt(i.scale,e),f=vt(i.position,e),y=vt(c.scale,e),b=vt(c.position,e),g=vt(c.rotation,e),x=s/t.count,v=N(c.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let s=t*(c.freqScale/10)+c.movement,o=null===u?0:u.noise(s,s,s),l=t+1;e.scale.x=m[0]+v(l,P(o,y[0]))||Z,e.scale.y=m[1]+v(l,P(o,y[1]))||Z,e.scale.z=m[2]+v(l,P(o,y[2]))||Z;let h=x*t-n;switch(i.axis){default:case"x":bt.set(0,h,0);break;case"y":bt.set(0,0,h);break;case"z":bt.set(h,0,0)}ut.copy(r).applyQuaternion(gt.setFromEuler(bt)).multiplyScalar(i.radius),e.position.set(ut.x+(f[0]+v(l,P(o,b[0]))),ut.y+(f[1]+v(l,P(o,b[1]))),ut.z+(f[2]+v(l,P(o,b[2]))));let d=v(l,P(o,g[0])),p=v(l,P(o,g[1])),M=v(l,P(o,g[2]));!0===i.alignment?e.rotation.set(bt.x+(a.x+d),bt.y+(a.y+p),bt.z+(a.z+M)):e.rotation.set(a.x+d,a.y+p,a.z+M)}}_updateLinear(t,e){if("linear"!==t.type)throw new Error;let r=t.linear,i=vt(r.rotation,e),n=vt(r.scale,e),s=vt(r.position,e),o=new p(i[0]??0,i[1]??0,i[2]??0),a=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,h=vt(a.rotation,e),c=vt(a.scale,e),d=vt(a.position,e),u=!0===this.parameters.randomness&&0!==a.strength?this.getRandom(a):null,m=N(a.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let r=t*(a.freqScale/10)+a.movement,i=null===u?0:u.noise(r,r,r),l=t+1,p=m(l,P(i,h[0])),f=m(l,P(i,h[1])),y=m(l,P(i,h[2]));e.scale.x=1+(n[0]-1)*t+m(l,P(i,c[0]))||Z,e.scale.y=1+(n[1]-1)*t+m(l,P(i,c[1]))||Z,e.scale.z=1+(n[2]-1)*t+m(l,P(i,c[2]))||Z,e.rotation.set(o.x*t+p,o.y*t+f,o.z*t+y),e.position.x=s[0]*t+m(l,P(i,d[0])),e.position.y=s[1]*t+m(l,P(i,d[1])),e.position.z=s[2]*t+m(l,P(i,d[2]))}}_updateGrid(t,e){let r=0,i=t.grid,n=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,s=vt(n.scale,e),o=vt(n.rotation,e),a=vt(n.position,e),h=!0===this.parameters.randomness&&0!==n.strength?this.getRandom(n,!0):null,c=N(n.strength,this.parameters.randomness),u=vt(i.count,e),p=vt(i.size,e);if(!0===i.useCenter){let t={x:u[0]%2==0?2:1,y:u[1]%2==0?2:1,z:u[2]%2==0?2:1},e=new d(p[0]*(u[0]-t.x)*.5,p[1]*(u[1]-t.y)*.5,p[2]*(u[2]-t.z)*.5);for(let t=0;t<u[0];t++)for(let i=0;i<u[1];i++)for(let l=0;l<u[2];l++){let d=this.children[r++];if(!d)continue;let u=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(i+1)*(n.freqScale/10)+n.movement,(l+1)*(n.freqScale/10)+n.movement);d.scale.x=1+c(r,P(u,s[0]))||Z,d.scale.y=1+c(r,P(u,s[1]))||Z,d.scale.z=1+c(r,P(u,s[2]))||Z;let m=c(r,P(u,o[0])),f=c(r,P(u,o[1])),y=c(r,P(u,o[2]));d.rotation.set(m,f,y),d.position.x=p[0]*t-e.x+c(r,P(u,a[0])),d.position.y=p[1]*i-e.y+c(r,P(u,a[1])),d.position.z=p[2]*l-e.z+c(r,P(u,a[2]))}}else for(let t=0;t<u[0];t++)for(let e=0;e<u[1];e++)for(let i=0;i<u[2];i++){let l=this.children[r++];if(!l)continue;let d=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(e+1)*(n.freqScale/10)+n.movement,(i+1)*(n.freqScale/10)+n.movement);l.scale.x=1+c(r,P(d,s[0]))||Z,l.scale.y=1+c(r,P(d,s[1]))||Z,l.scale.z=1+c(r,P(d,s[2]))||Z;let u=c(r,P(d,o[0])),m=c(r,P(d,o[1])),f=c(r,P(d,o[2]));l.rotation.set(u,m,f),l.position.x=p[0]*t+c(r,P(d,a[0])),l.position.y=-p[1]*e+c(r,P(d,a[1])),l.position.z=-p[2]*i+c(r,P(d,a[2]))}}_updateToObject(r,i){if("toObject"!==r.type)throw new Error;let{toObject:n}=r,s=vt(n.rotation,i),o=vt(n.position,i),a=vt(n.scale,i),h=new p(s[0],s[1],s[2]),c=r.randomnessObject??l.defaultData([1,1,1]).randomnessObject,d=vt(c.rotation,i),u=vt(c.position,i),m=vt(c.scale,i),f=!0===this.parameters.randomness&&0!==c.strength?this.getRandom(c):null,y=N(c.strength,this.parameters.randomness);if(!n.object){for(let[,t]of this.children.entries())t.position.set(0,0,0),t.scale.setScalar(1),t.rotation.set(0,0,0);return this.objectForSample=void 0,void this.invalidateSurfaceCaches()}if(!this.objectForSample)return;if(this.objectForSample instanceof t){if(!this.objectForSample.font?.isLoaded||void 0===this.objectForSample.geometry.attributes.position)return void(this._pendingMediaLoad=!0);this._pendingMediaLoad=!1}if(void 0===this.objectForSample.geometry&&this.objectForSample.isAncestorOf(this.object.uuid))return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) seem to be a child/descendant of the object it's being cloned to. Please re-parent it so that they are siblings instead.`);let b=this.getSubdivData();if(b.length>0){let t=Math.round(b.length*n.count/100);this._updateCount(i,t)}else{let t=this.objectForSample.geometry.getAttribute("position");if(!t||isNaN(t.count)||0===t.count)return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) cannot be cloned on the surface of "${this.objectForSample.name}" (${this.objectForSample.uuid}) because the latter does not have a valid geometry.`)}this.objectForSample.updateMatrixWorld();let g="random"===n.spreadType,v=null;g&&(v=this.getSurfaceSampler(),v.setRandomGenerator((0,x.default)(this.object.uuid+n.seed)));let M=C[n.axis],w=this.children;ot.fromArray(M);let S=this.objectForSample instanceof e;S&&rt.copy(this.objectForSample.matrixWorld).invert(),"normal"!==n.align&&this.object.getWorldDirection(dt),ft.set(ot.y,ot.z,ot.x).normalize(),yt.copy(ft).cross(ot).normalize(),nt.makeBasis(ft,ot,yt).invert();for(let[t,e]of w.entries()){let r=t*(c.freqScale/10)+c.movement,i=null===f?0:f.noise(r,r,r),s=t+1,l=y(s,P(i,d[0])),p=y(s,P(i,d[1])),x=y(s,P(i,d[2]));g?v.sample(lt,ht):(b.length&&(lt.fromArray(b[t].pos),ht.fromArray(b[t].norm)),S&<.applyMatrix4(rt)),e.position.copy(lt);let M="normal"===n.align?ht:dt,w=at.fromArray(o);at.x+=y(s,P(i,u[0])),at.y+=y(s,P(i,u[1])),at.z+=y(s,P(i,u[2]));let j=Math.acos(M.dot(ot)),A=ct.crossVectors(ot,M).normalize(),F=tt.makeRotationAxis(A,j);pt.copy(M).cross(this.object.up).normalize(),mt.copy(pt).cross(M).normalize(),it.makeBasis(pt,M,mt),st.multiplyMatrices(it,nt),bt.setFromRotationMatrix(st),w.applyMatrix4(F),e.position.add(w),e.rotation.set(bt.x+h.x+l,bt.y+h.y+p,bt.z+h.z+x),e.scale.set(1+a[0]+y(s,P(i,m[0]))||Z,1+a[1]+y(s,P(i,m[1]))||Z,1+a[2]+y(s,P(i,m[2]))||Z),e.scale.multiply(this.object.scale)}}getSurfaceSampler(){let t=this.objectForSample,e=t.geometry,r=e.getAttribute("position"),i=e.index,n=this.surfaceSamplerCache;if(null!==n&&n.geometry===e&&n.position===r&&n.positionVersion===xt(r)&&n.index===i&&n.indexVersion===(null===i?-1:i.version))return n.sampler;let s=new z(t).build();return this.surfaceSamplerCache={geometry:e,position:r,positionVersion:xt(r),index:i,indexVersion:null===i?-1:i.version,sampler:s},s}invalidateSurfaceCaches(){this.surfaceSamplerCache=null,this.surfacePointsCache=null}getSubdivData(){if(!this.objectForSample)return[];let t=this.parameters.toObject.spreadType;if("random"===t)return[];let r=this.objectForSample instanceof e,i=this.objectForSample.geometry;if(!r&&i){let e=this.surfacePointsCache,r=i.getAttribute("position");if(null!==e&&e.spreadType===t&&e.geometry===i&&e.position===r&&e.positionVersion===xt(r)&&e.index===i.index&&e.indexVersion===(null===i.index?-1:i.index.version))return e.points}let n=new Map,s=(t,e)=>{let r=Math.round(1e4*t[0])+"_"+Math.round(1e4*t[1])+"_"+Math.round(1e4*t[2]),i=n.get(r);i?(i.pos[0]+=t[0],i.pos[1]+=t[1],i.pos[2]+=t[2],i.norm[0]+=e[0],i.norm[1]+=e[1],i.norm[2]+=e[2],i.count+=1):n.set(r,{pos:[...t],norm:[...e],count:1})};if(r){let e=this.objectForSample,r=W[t],i=L[r],n=U[r],o=D[r],a=i(e.subdivPointerNew);for(let t=0;t<=a-1;t++){let r=n(e.subdivPointerNew,t),i=o(e.subdivPointerNew,t);K.fromArray(r).applyMatrix4(e.matrixWorld),J.fromArray(i),s(K.toArray(),J.toArray())}}else(i.index?function(t){let e=[],r=Math.floor(t.index.count/3);for(let i=0;i<r;i++)if(E.fromArray(t.index.array,3*i),q.setFromAttributeAndIndices(t.attributes.position,E.x,E.y,E.z),q.getNormal(G),q.getMidpoint(H),!(isNaN(H.x)||isNaN(H.y)||isNaN(H.z))){let{a:t,b:r,c:i}=q,n=t.toArray(),s=r.toArray(),o=i.toArray(),a=t.distanceTo(r),l=r.distanceTo(i),h=i.distanceTo(t),c=I(n,s),d=I(s,o),u=I(o,n),p=[a,l,h],m=Math.max(...p),f=p.filter(t=>Math.round(t)===Math.round(m)).length>1,y=[],b=q.getMidpoint(H).toArray();m===a&&!f&&(y=[d,u,u],b=c),m===l&&!f&&(y=[c,u,u],b=d),m===h&&!f&&(y=[c,d,d],b=u),f&&(y=[c,d,u]),e.push({vertices:[n,s,o],faceCenters:y,midpoint:b,norm:q.getNormal(G).toArray()})}return e}(i):function(t){let e=[],{position:r}=t.attributes;for(let t=0;t<r.count;t++){q.setFromAttributeAndIndices(r,3*t,3*t+1,3*t+2),q.getNormal(G),q.getMidpoint(H);let i=q.a.toArray(),n=q.b.toArray(),s=q.c.toArray();e.push({vertices:[i,n,s],faceCenters:[I(i,n),I(n,s),I(s,i)],midpoint:H.toArray(),norm:G.toArray()})}return e}(i)).forEach((e,r)=>{"polygon_center"===t&&s(e.midpoint,e.norm),"vertex"===t&&(s(e.vertices[0],e.norm),s(e.vertices[1],e.norm),s(e.vertices[2],e.norm)),"edge"===t&&(s(e.faceCenters[0],e.norm),s(e.faceCenters[1],e.norm),s(e.faceCenters[2],e.norm))});let o=Array.from(n.values());for(let t of o)t.pos[0]/=t.count,t.pos[1]/=t.count,t.pos[2]/=t.count,t.norm[0]/=t.count,t.norm[1]/=t.count,t.norm[2]/=t.count;if(!r&&i){let e=i.getAttribute("position");this.surfacePointsCache={spreadType:t,geometry:i,position:e,positionVersion:xt(e),index:i.index,indexVersion:null===i.index?-1:i.index.version,points:o}}return o}updateState(t,e){if(this.parameters=o(t),"toObject"!==this.parameters.type)this.invalidateSurfaceCaches(),(null===this.parent||this.parent!==this.object)&&(this.removeFromParent(),this.object.parent?.add(this),this.matrix=this.object.matrix,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1);else if(null===this.parent||this.parent.uuid!==this.parameters.toObject.object){this.removeFromParent(),this.invalidateSurfaceCaches();let t=e.scene.find(this.parameters.toObject.object);this.objectForSample=t instanceof s?t:void 0,this.matrix=new u,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1,t&&t.add(this)}this.update(e)}get pendingMediaLoad(){return this._pendingMediaLoad}};export{wt as a};
|
|
1
|
+
import{a as t}from"./runtime-chunk-7M2ECX7M.js";import{b as e}from"./runtime-chunk-6VEOICF7.js";import{H as r,ea as i}from"./runtime-chunk-ZOVWUNB5.js";import{f as n,v as s}from"./runtime-chunk-4Z7ZMHQK.js";import{c as o}from"./runtime-chunk-RTLL6WIB.js";import{c as a}from"./runtime-chunk-2PT2WH66.js";import{L as l}from"./runtime-chunk-NY4SLVL4.js";import{Ec as h,Gc as c,Hc as d,Qc as u,Rc as p,Tc as m,Yc as f,sd as y}from"./runtime-chunk-KPOUV3HD.js";import{a as b,b as g}from"./runtime-chunk-ML3Z74BL.js";var x=g(b((t,e)=>{var r,i;r=t,i=function(){return t.importState=function(e){var r=new t;return r.importState(e),r},t;function t(){return function(t){var e=0,r=0,i=0,n=1;0==t.length&&(t=[+new Date]);var s=function(){var t=4022871197,e=function(e){e=e.toString();for(var r=0;r<e.length;r++){var i=.02519603282416938*(t+=e.charCodeAt(r));i-=t=i>>>0,t=(i*=t)>>>0,t+=4294967296*(i-=t)}return 2.3283064365386963e-10*(t>>>0)};return e.version="Mash 0.9",e}();e=s(" "),r=s(" "),i=s(" ");for(var o=0;o<t.length;o++)(e-=s(t[o]))<0&&(e+=1),(r-=s(t[o]))<0&&(r+=1),(i-=s(t[o]))<0&&(i+=1);s=null;var a=function(){var t=2091639*e+2.3283064365386963e-10*n;return e=r,r=i,i=t-(n=0|t)};return a.next=a,a.uint32=function(){return 4294967296*a()},a.fract53=function(){return a()+11102230246251565e-32*(2097152*a()|0)},a.version="Alea 0.9",a.args=t,a.exportState=function(){return[e,r,i,n]},a.importState=function(t){e=+t[0]||0,r=+t[1]||0,i=+t[2]||0,n=+t[3]||0},a}(Array.prototype.slice.call(arguments))}},"object"==typeof t?e.exports=i():"function"==typeof define&&define.amd?define(i):r.Alea=i()})()),v=.5*(Math.sqrt(3)-1),M=(3-Math.sqrt(3))/6,w=1/3,j=1/6,S=(Math.sqrt(5),Math.sqrt(5),t=>0|Math.floor(t)),A=new Float64Array([1,1,-1,1,1,-1,-1,-1,1,0,-1,0,1,0,-1,0,0,1,0,-1,0,1,0,-1]),F=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function _(t){let e=new Uint8Array(512);for(let t=0;t<256;t++)e[t]=t;for(let r=0;r<255;r++){let i=r+~~(t()*(256-r)),n=e[r];e[r]=e[i],e[i]=n}for(let t=256;t<512;t++)e[t]=e[t-256];return e}var z=new f,O=class{constructor(t){this.weightAttribute=null;let e=t.geometry;if(!e.isBufferGeometry||3!==e.attributes.position.itemSize)throw new Error("THREE.MeshSurfaceSampler: Requires BufferGeometry triangle mesh.");e.index&&(e=e.toNonIndexed()),this.geometry=e,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute("position"),this.distribution=null}build(){let t=this.positionAttribute,e=new Float32Array(t.count/3);for(let r=0;r<t.count;r+=3){let i=1;z.a.fromBufferAttribute(t,r),z.b.fromBufferAttribute(t,r+1),z.c.fromBufferAttribute(t,r+2),i*=z.getArea(),e[r/3]=i}this.distribution=new Float32Array(t.count/3);let r=0;for(let t=0;t<e.length;t++)r+=e[t],this.distribution[t]=r;return this}setRandomGenerator(t){return this.randomFunction=t,this}sample(t,e){if(this.distribution){let r=this.distribution[this.distribution.length-1],i=this.binarySearch(this.randomFunction()*r);return this.sampleFace(i,t,e)}}binarySearch(t){if(!this.distribution)return 0;let e=this.distribution,r=0,i=e.length-1,n=-1;for(;r<=i;){let s=Math.ceil((r+i)/2);if(0===s||e[s-1]<=t&&e[s]>t){n=s;break}t<e[s]?i=s-1:r=s+1}return n}sampleFace(t,e,r){let i=this.randomFunction(),n=this.randomFunction();return i+n>1&&(i=1-i,n=1-n),z.a.fromBufferAttribute(this.positionAttribute,3*t),z.b.fromBufferAttribute(this.positionAttribute,3*t+1),z.c.fromBufferAttribute(this.positionAttribute,3*t+2),e.set(0,0,0).addScaledVector(z.a,i).addScaledVector(z.b,n).addScaledVector(z.c,1-(i+n)),z.getNormal(r),this}},C={x:[1,0,0],"-x":[-1,0,0],y:[0,1,0],"-y":[0,-1,0],z:[0,0,1],"-z":[0,0,-1]},W={polygon_center:0,edge:1,vertex:2},N=(t,e)=>(r,i)=>e&&0!==r&&0!==t?t*i/100:0,P=(t,e)=>{let r=Math.abs(e),i=-1*r;return(t- -1)*(r-i)/2+i},T=new d,V=new d,k=new d,B=new d;function I(t,e){let r=k.fromArray(t),i=B.fromArray(e);V.copy(i).sub(r);let n=V.length();return V.normalize().multiplyScalar(.5*n),T.copy(r).add(V).toArray()}var R,U,D,E,L=new f,q=new d,G=new d,H=new d,$=class extends y{},Z=class extends ${constructor(t,e){super(void 0,void 0,e),this.source=t,this.isClonerInstancedMesh=!0,this.pivotMatrix=new u,this.previousModelViewMatrix=new u,this.copyPreviousMatrix=!0,this.capacity=e,this.count=0,this.matrixAutoUpdate=!1}raycast(t,e){}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorld.multiply(this.pivotMatrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(let e of this.children)e.updateMatrixWorld(t)}updateWorldMatrix(t,e){let r=this.parent;if(t&&null!==r&&r.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorld.multiply(this.pivotMatrix),e)for(let t of this.children)t.updateWorldMatrix(!1,!0)}onAfterRender(t,e,r,i,n,s){this.copyPreviousMatrix&&this.previousModelViewMatrix.copy(this.modelViewMatrix)}get visible(){return!0!==this.source.cloner?.insideBoolean&&(this.source.visible||this.source.dataPatched.visible&&!0===this.source.dataPatched.cloner?.hideBase)}set visible(t){}get castShadow(){return this.source.castShadow}set castShadow(t){}get receiveShadow(){return this.source.receiveShadow}set receiveShadow(t){}get layers(){return this.source.layers}set layers(t){}get geometry(){return this.source.geometry}set geometry(t){}get material(){return this.source.material}set material(t){}get morphTargetInfluences(){return this.source.morphTargetInfluences}set morphTargetInfluences(t){}},Q=t=>.5*(1-Math.cos(t*Math.PI)),K=class{constructor(){this.perlin=new Array(4096)}noise(t,e=0,r=0){if(null==this.perlin){this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=Math.random()}t<0&&(t=-t),e<0&&(e=-e),r<0&&(r=-r);let i,n,s,o,a,l=Math.floor(t),h=Math.floor(e),c=Math.floor(r),d=t-l,u=e-h,p=r-c,m=0,f=.5;for(let t=0;t<4;t++){let t=l+(h<<4)+(c<<8);i=Q(d),n=Q(u),s=this.perlin[4095&t],s+=i*(this.perlin[t+1&4095]-s),o=this.perlin[t+16&4095],o+=i*(this.perlin[t+16+1&4095]-o),s+=n*(o-s),t+=256,o=this.perlin[4095&t],o+=i*(this.perlin[t+1&4095]-o),a=this.perlin[t+16&4095],a+=i*(this.perlin[t+16+1&4095]-a),o+=n*(a-o),s+=Q(p)*(o-s),m+=s*f,f*=.5,l<<=1,d*=2,h<<=1,u*=2,c<<=1,p*=2,d>=1&&(l++,d--),u>=1&&(h++,u--),p>=1&&(c++,p--)}return m}noiseSeed(t){let e=(()=>{let t,e;return{setSeed(r){e=t=(r??4294967296*Math.random())>>>0},getSeed:()=>t,rand:()=>(e=(1664525*e+1013904223)%4294967296,e/4294967296)}})();e.setSeed(t),this.perlin=new Array(4096);for(let t=0;t<4096;t++)this.perlin[t]=e.rand()}},Y=1e-4,X=new d,J=new d;r.then(t=>{U=[(R=t).get_face_center,R.get_edge_midpoint,R.get_vertex_position],D=[R.get_face_normal,R.get_edge_normal,R.get_vertex_normal],E=[R.face_count,R.edge_count,R.vertex_count]}),new u;var tt=new u,et=new u,rt=new u,it=new u,nt=new u,st=new u,ot=new d,at=new d,lt=new d,ht=new d,ct=new d,dt=new d,ut=new d,pt=new d,mt=new d,ft=new d,yt=new d,bt=new p,gt=new c;function xt(t){return t?t.version??t.data?.version??0:-1}function vt(t,e){return["number"==typeof t?.[0]?t[0]:"string"==typeof t?.[0]&&e?parseFloat(String(e.shared.getVariable(t[0])??"0")):0,"number"==typeof t?.[1]?t[1]:"string"==typeof t?.[1]&&e?parseFloat(String(e.shared.getVariable(t[1])??"0")):0,"number"==typeof t?.[2]?t[2]:"string"==typeof t?.[2]&&e?parseFloat(String(e.shared.getVariable(t[2])??"0")):0]}var Mt=class{constructor(t,e){this.data=t,this.is3D=e,this.perlin=new K,"perlin"===t.noiseType?(this.perlin.noiseSeed(t.seed),this.noise=e?(t,e,r)=>this.perlin.noise(t,e,r):t=>this.perlin.noise(t)):this.noise=e?function(t=Math.random){let e=_(t),r=new Float64Array(e).map(t=>F[t%12*3]),i=new Float64Array(e).map(t=>F[t%12*3+1]),n=new Float64Array(e).map(t=>F[t%12*3+2]);return function(t,s,o){let a,l,h,c,d,u,p,m,f,y,b=(t+s+o)*w,g=S(t+b),x=S(s+b),v=S(o+b),M=(g+x+v)*j,A=t-(g-M),F=s-(x-M),_=o-(v-M);A>=F?F>=_?(d=1,u=0,p=0,m=1,f=1,y=0):A>=_?(d=1,u=0,p=0,m=1,f=0,y=1):(d=0,u=0,p=1,m=1,f=0,y=1):F<_?(d=0,u=0,p=1,m=0,f=1,y=1):A<_?(d=0,u=1,p=0,m=0,f=1,y=1):(d=0,u=1,p=0,m=1,f=1,y=0);let z=A-d+j,O=F-u+j,C=_-p+j,W=A-m+2*j,N=F-f+2*j,P=_-y+2*j,T=A-1+.5,V=F-1+.5,k=_-1+.5,B=255&g,I=255&x,R=255&v,U=.6-A*A-F*F-_*_;if(U<0)a=0;else{let t=B+e[I+e[R]];U*=U,a=U*U*(r[t]*A+i[t]*F+n[t]*_)}let D=.6-z*z-O*O-C*C;if(D<0)l=0;else{let t=B+d+e[I+u+e[R+p]];D*=D,l=D*D*(r[t]*z+i[t]*O+n[t]*C)}let E=.6-W*W-N*N-P*P;if(E<0)h=0;else{let t=B+m+e[I+f+e[R+y]];E*=E,h=E*E*(r[t]*W+i[t]*N+n[t]*P)}let L=.6-T*T-V*V-k*k;if(L<0)c=0;else{let t=B+1+e[I+1+e[R+1]];L*=L,c=L*L*(r[t]*T+i[t]*V+n[t]*k)}return 32*(a+l+h+c)}}((0,x.default)(t.seed)):function(t=Math.random){let e=_(t),r=new Float64Array(e).map(t=>A[t%12*2]),i=new Float64Array(e).map(t=>A[t%12*2+1]);return function(t,n){let s,o,a=0,l=0,h=0,c=(t+n)*v,d=S(t+c),u=S(n+c),p=(d+u)*M,m=t-(d-p),f=n-(u-p);m>f?(s=1,o=0):(s=0,o=1);let y=m-s+M,b=f-o+M,g=m-1+2*M,x=f-1+2*M,w=255&d,j=255&u,A=.5-m*m-f*f;if(A>=0){let t=w+e[j];A*=A,a=A*A*(r[t]*m+i[t]*f)}let F=.5-y*y-b*b;if(F>=0){let t=w+s+e[j+o];F*=F,l=F*F*(r[t]*y+i[t]*b)}let _=.5-g*g-x*x;if(_>=0){let t=w+1+e[j+1];_*=_,h=_*_*(r[t]*g+i[t]*x)}return 70*(a+l+h)}}((0,x.default)(t.seed??""))}},wt=class extends(n(m)){constructor(t,e){super(),this.parameters=e,this.isCloner=!0,this.objectForSample=void 0,this._pendingMediaLoad=!1,this.random=null,this.surfaceSamplerCache=null,this.surfacePointsCache=null,this.object=t}resetOnMove(){this.removeFromParent(),this.parent=null}removeFromParent(){return super.removeFromParent(),this.instancedMesh?.removeFromParent(),this}dispose(){this.removeFromParent(),this._disposeInstancedMesh(),this._invalidateBoolean()}_invalidateBoolean(){this.object instanceof s&&this.object.onClonerLayoutUpdated()}expandClones(t){if(null===this.parent)this.updateState(this.parameters,t);else{for(let t of this.children)t instanceof i&&t.expand();this._syncInstancedMesh()}}invalidateTransform(t){this.matrixWorldNeedsUpdate=!0}onObjUpdateMatrix(){"toObject"!==this.parameters.type&&(this.matrixWorldNeedsUpdate=!0)}update(t){switch(this._updateCount(t),this.parameters.type){case"radial":this._updateRadial(this.parameters,t);break;case"linear":this._updateLinear(this.parameters,t);break;case"grid":this._updateGrid(this.parameters,t);break;case"toObject":this._updateToObject(this.parameters,t)}for(let t of this.children){let e=t.transformOverride;void 0!==e&&(t.position.fromArray(e.position),t.rotation.fromArray(e.rotation),t.scale.fromArray(e.scale)),t.updateMatrix(),t.hasNonUniformScale&&(t.updateMatrixWorld(),t.updateMatrixWorldRigid())}this._syncInstancedMesh(),this._invalidateBoolean()}get instancingActive(){return void 0!==this.instancedMesh}get insideBoolean(){return null!==this.parent&&"booleanOp"in this.parent}_instancingEligible(){if(!0!==this.parameters.instanced)return!1;let t=this.object;return!(t.entityChildrenCount()>0||!0!==t.isMesh||a(t)||!0===t.isDecalObject)}_syncInstancedMesh(){if(!this._instancingEligible())return void this._disposeInstancedMesh();let t=this.instancedMesh;if(void 0!==t&&t.capacity<this.children.length&&(this._disposeInstancedMesh(),t=void 0),void 0===t){let e=Math.max(8,Math.ceil(1.5*this.children.length));t=this.instancedMesh=new Z(this.object,e)}t.matrix=this.matrix,t.matrixWorldNeedsUpdate=!0,t.parent!==this.parent&&(t.removeFromParent(),this.parent?.add(t)),this.syncInstanceMatrices()}syncInstanceMatrices(){this._invalidateBoolean();let t=this.instancedMesh;if(void 0===t)return;let e=0;for(let r of this.children)!1!==r.playModeVisible&&(et.copy(r.matrix).multiply(r.pivotMatrix),t.setMatrixAt(e++,et));t.count=e,t.instanceMatrix.needsUpdate=!0,t.boundingSphere=null}_disposeInstancedMesh(){let t=this.instancedMesh;void 0!==t&&(this.instancedMesh=void 0,t.removeFromParent(),t.dispose())}_updateCount(t,e){let r;if(void 0!==e)r=e;else{let e=vt(this.parameters.grid.count,t);r="grid"===this.parameters.type?Math.round(e[0])*Math.round(e[1])*Math.round(e[2]):this.parameters.count}if("toObject"===this.parameters.type)if(this.parameters.toObject.object){if(void 0===e&&"random"!==this.parameters.toObject.spreadType)return}else r=0;if(this.children.length!==r)if(this.children.length<r)for(let t=0,e=r-this.children.length;t<e;++t){let t=new i(this.object);t.expand(),this.add(t)}else for(;this.children.length>r;){let t=this.children.pop();t.parent=null,t.dispatchEvent({type:"removed"}),this.dispatchEvent({type:"childremoved",child:t})}}getRandom(t,e=!1){return(null===this.random||this.random.data.seed!==t.seed||this.random.data.noiseType!==t.noiseType||this.random.is3D!==e)&&(this.random=new Mt(t,e)),this.random}_updateRadial(t,e){let r,i=t.radial,n=i.start*h.DEG2RAD,s=n-i.end*h.DEG2RAD,o=vt(i.rotation,e),a=new p(o[0],o[1],o[2]);switch(i.axis){case"z":r=new d(0,0,1);break;case"y":r=new d(0,1,0);break;default:r=new d(1,0,0)}let c=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,u=!0===this.parameters.randomness&&0!==c.strength?this.getRandom(c):null,m=vt(i.scale,e),f=vt(i.position,e),y=vt(c.scale,e),b=vt(c.position,e),g=vt(c.rotation,e),x=s/t.count,v=N(c.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let s=t*(c.freqScale/10)+c.movement,o=null===u?0:u.noise(s,s,s),l=t+1;e.scale.x=m[0]+v(l,P(o,y[0]))||Y,e.scale.y=m[1]+v(l,P(o,y[1]))||Y,e.scale.z=m[2]+v(l,P(o,y[2]))||Y;let h=x*t-n;switch(i.axis){default:case"x":bt.set(0,h,0);break;case"y":bt.set(0,0,h);break;case"z":bt.set(h,0,0)}ut.copy(r).applyQuaternion(gt.setFromEuler(bt)).multiplyScalar(i.radius),e.position.set(ut.x+(f[0]+v(l,P(o,b[0]))),ut.y+(f[1]+v(l,P(o,b[1]))),ut.z+(f[2]+v(l,P(o,b[2]))));let d=v(l,P(o,g[0])),p=v(l,P(o,g[1])),M=v(l,P(o,g[2]));!0===i.alignment?e.rotation.set(bt.x+(a.x+d),bt.y+(a.y+p),bt.z+(a.z+M)):e.rotation.set(a.x+d,a.y+p,a.z+M)}}_updateLinear(t,e){if("linear"!==t.type)throw new Error;let r=t.linear,i=vt(r.rotation,e),n=vt(r.scale,e),s=vt(r.position,e),o=new p(i[0]??0,i[1]??0,i[2]??0),a=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,h=vt(a.rotation,e),c=vt(a.scale,e),d=vt(a.position,e),u=!0===this.parameters.randomness&&0!==a.strength?this.getRandom(a):null,m=N(a.strength,this.parameters.randomness);for(let[t,e]of this.children.entries()){let r=t*(a.freqScale/10)+a.movement,i=null===u?0:u.noise(r,r,r),l=t+1,p=m(l,P(i,h[0])),f=m(l,P(i,h[1])),y=m(l,P(i,h[2]));e.scale.x=1+(n[0]-1)*t+m(l,P(i,c[0]))||Y,e.scale.y=1+(n[1]-1)*t+m(l,P(i,c[1]))||Y,e.scale.z=1+(n[2]-1)*t+m(l,P(i,c[2]))||Y,e.rotation.set(o.x*t+p,o.y*t+f,o.z*t+y),e.position.x=s[0]*t+m(l,P(i,d[0])),e.position.y=s[1]*t+m(l,P(i,d[1])),e.position.z=s[2]*t+m(l,P(i,d[2]))}}_updateGrid(t,e){let r=0,i=t.grid,n=t.randomnessObject??l.defaultData([1,1,1]).randomnessObject,s=vt(n.scale,e),o=vt(n.rotation,e),a=vt(n.position,e),h=!0===this.parameters.randomness&&0!==n.strength?this.getRandom(n,!0):null,c=N(n.strength,this.parameters.randomness),u=vt(i.count,e),p=vt(i.size,e);if(!0===i.useCenter){let t={x:u[0]%2==0?2:1,y:u[1]%2==0?2:1,z:u[2]%2==0?2:1},e=new d(p[0]*(u[0]-t.x)*.5,p[1]*(u[1]-t.y)*.5,p[2]*(u[2]-t.z)*.5);for(let t=0;t<u[0];t++)for(let i=0;i<u[1];i++)for(let l=0;l<u[2];l++){let d=this.children[r++];if(!d)continue;let u=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(i+1)*(n.freqScale/10)+n.movement,(l+1)*(n.freqScale/10)+n.movement);d.scale.x=1+c(r,P(u,s[0]))||Y,d.scale.y=1+c(r,P(u,s[1]))||Y,d.scale.z=1+c(r,P(u,s[2]))||Y;let m=c(r,P(u,o[0])),f=c(r,P(u,o[1])),y=c(r,P(u,o[2]));d.rotation.set(m,f,y),d.position.x=p[0]*t-e.x+c(r,P(u,a[0])),d.position.y=p[1]*i-e.y+c(r,P(u,a[1])),d.position.z=p[2]*l-e.z+c(r,P(u,a[2]))}}else for(let t=0;t<u[0];t++)for(let e=0;e<u[1];e++)for(let i=0;i<u[2];i++){let l=this.children[r++];if(!l)continue;let d=null===h?0:h.noise((t+1)*(n.freqScale/10)+n.movement,(e+1)*(n.freqScale/10)+n.movement,(i+1)*(n.freqScale/10)+n.movement);l.scale.x=1+c(r,P(d,s[0]))||Y,l.scale.y=1+c(r,P(d,s[1]))||Y,l.scale.z=1+c(r,P(d,s[2]))||Y;let u=c(r,P(d,o[0])),m=c(r,P(d,o[1])),f=c(r,P(d,o[2]));l.rotation.set(u,m,f),l.position.x=p[0]*t+c(r,P(d,a[0])),l.position.y=-p[1]*e+c(r,P(d,a[1])),l.position.z=-p[2]*i+c(r,P(d,a[2]))}}_updateToObject(r,i){if("toObject"!==r.type)throw new Error;let{toObject:n}=r,s=vt(n.rotation,i),o=vt(n.position,i),a=vt(n.scale,i),h=new p(s[0],s[1],s[2]),c=r.randomnessObject??l.defaultData([1,1,1]).randomnessObject,d=vt(c.rotation,i),u=vt(c.position,i),m=vt(c.scale,i),f=!0===this.parameters.randomness&&0!==c.strength?this.getRandom(c):null,y=N(c.strength,this.parameters.randomness);if(!n.object){for(let[,t]of this.children.entries())t.position.set(0,0,0),t.scale.setScalar(1),t.rotation.set(0,0,0);return this.objectForSample=void 0,void this.invalidateSurfaceCaches()}if(!this.objectForSample)return;if(this.objectForSample instanceof t){if(!this.objectForSample.font?.isLoaded||void 0===this.objectForSample.geometry.attributes.position)return void(this._pendingMediaLoad=!0);this._pendingMediaLoad=!1}if(void 0===this.objectForSample.geometry&&this.objectForSample.isAncestorOf(this.object.uuid))return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) seem to be a child/descendant of the object it's being cloned to. Please re-parent it so that they are siblings instead.`);let b=this.getSubdivData();if(b.length>0){let t=Math.round(b.length*n.count/100);this._updateCount(i,t)}else{let t=this.objectForSample.geometry.getAttribute("position");if(!t||isNaN(t.count)||0===t.count)return void console.warn(`Oh no! The object "${this.object.name}" (${this.object.uuid}) cannot be cloned on the surface of "${this.objectForSample.name}" (${this.objectForSample.uuid}) because the latter does not have a valid geometry.`)}this.objectForSample.updateMatrixWorld();let g="random"===n.spreadType,v=null;g&&(v=this.getSurfaceSampler(),v.setRandomGenerator((0,x.default)(this.object.uuid+n.seed)));let M=C[n.axis],w=this.children;ot.fromArray(M);let j=this.objectForSample instanceof e;j&&rt.copy(this.objectForSample.matrixWorld).invert(),"normal"!==n.align&&this.object.getWorldDirection(dt),ft.set(ot.y,ot.z,ot.x).normalize(),yt.copy(ft).cross(ot).normalize(),nt.makeBasis(ft,ot,yt).invert();for(let[t,e]of w.entries()){let r=t*(c.freqScale/10)+c.movement,i=null===f?0:f.noise(r,r,r),s=t+1,l=y(s,P(i,d[0])),p=y(s,P(i,d[1])),x=y(s,P(i,d[2]));g?v.sample(lt,ht):(b.length&&(lt.fromArray(b[t].pos),ht.fromArray(b[t].norm)),j&<.applyMatrix4(rt)),e.position.copy(lt);let M="normal"===n.align?ht:dt,w=at.fromArray(o);at.x+=y(s,P(i,u[0])),at.y+=y(s,P(i,u[1])),at.z+=y(s,P(i,u[2]));let S=Math.acos(M.dot(ot)),A=ct.crossVectors(ot,M).normalize(),F=tt.makeRotationAxis(A,S);pt.copy(M).cross(this.object.up).normalize(),mt.copy(pt).cross(M).normalize(),it.makeBasis(pt,M,mt),st.multiplyMatrices(it,nt),bt.setFromRotationMatrix(st),w.applyMatrix4(F),e.position.add(w),e.rotation.set(bt.x+h.x+l,bt.y+h.y+p,bt.z+h.z+x),e.scale.set(1+a[0]+y(s,P(i,m[0]))||Y,1+a[1]+y(s,P(i,m[1]))||Y,1+a[2]+y(s,P(i,m[2]))||Y),e.scale.multiply(this.object.scale)}}getSurfaceSampler(){let t=this.objectForSample,e=t.geometry,r=e.getAttribute("position"),i=e.index,n=this.surfaceSamplerCache;if(null!==n&&n.geometry===e&&n.position===r&&n.positionVersion===xt(r)&&n.index===i&&n.indexVersion===(null===i?-1:i.version))return n.sampler;let s=new O(t).build();return this.surfaceSamplerCache={geometry:e,position:r,positionVersion:xt(r),index:i,indexVersion:null===i?-1:i.version,sampler:s},s}invalidateSurfaceCaches(){this.surfaceSamplerCache=null,this.surfacePointsCache=null}getSubdivData(){if(!this.objectForSample)return[];let t=this.parameters.toObject.spreadType;if("random"===t)return[];let r=this.objectForSample instanceof e,i=this.objectForSample.geometry;if(!r&&i){let e=this.surfacePointsCache,r=i.getAttribute("position");if(null!==e&&e.spreadType===t&&e.geometry===i&&e.position===r&&e.positionVersion===xt(r)&&e.index===i.index&&e.indexVersion===(null===i.index?-1:i.index.version))return e.points}let n=new Map,s=(t,e)=>{let r=Math.round(1e4*t[0])+"_"+Math.round(1e4*t[1])+"_"+Math.round(1e4*t[2]),i=n.get(r);i?(i.pos[0]+=t[0],i.pos[1]+=t[1],i.pos[2]+=t[2],i.norm[0]+=e[0],i.norm[1]+=e[1],i.norm[2]+=e[2],i.count+=1):n.set(r,{pos:[...t],norm:[...e],count:1})};if(r){let e=this.objectForSample,r=W[t],i=E[r],n=U[r],o=D[r],a=i(e.subdivPointerNew);for(let t=0;t<=a-1;t++){let r=n(e.subdivPointerNew,t),i=o(e.subdivPointerNew,t);X.fromArray(r).applyMatrix4(e.matrixWorld),J.fromArray(i),s(X.toArray(),J.toArray())}}else(i.index?function(t){let e=[],r=Math.floor(t.index.count/3);for(let i=0;i<r;i++)if(q.fromArray(t.index.array,3*i),L.setFromAttributeAndIndices(t.attributes.position,q.x,q.y,q.z),L.getNormal(G),L.getMidpoint(H),!(isNaN(H.x)||isNaN(H.y)||isNaN(H.z))){let{a:t,b:r,c:i}=L,n=t.toArray(),s=r.toArray(),o=i.toArray(),a=t.distanceTo(r),l=r.distanceTo(i),h=i.distanceTo(t),c=I(n,s),d=I(s,o),u=I(o,n),p=[a,l,h],m=Math.max(...p),f=p.filter(t=>Math.round(t)===Math.round(m)).length>1,y=[],b=L.getMidpoint(H).toArray();m===a&&!f&&(y=[d,u,u],b=c),m===l&&!f&&(y=[c,u,u],b=d),m===h&&!f&&(y=[c,d,d],b=u),f&&(y=[c,d,u]),e.push({vertices:[n,s,o],faceCenters:y,midpoint:b,norm:L.getNormal(G).toArray()})}return e}(i):function(t){let e=[],{position:r}=t.attributes;for(let t=0;t<r.count;t++){L.setFromAttributeAndIndices(r,3*t,3*t+1,3*t+2),L.getNormal(G),L.getMidpoint(H);let i=L.a.toArray(),n=L.b.toArray(),s=L.c.toArray();e.push({vertices:[i,n,s],faceCenters:[I(i,n),I(n,s),I(s,i)],midpoint:H.toArray(),norm:G.toArray()})}return e}(i)).forEach((e,r)=>{"polygon_center"===t&&s(e.midpoint,e.norm),"vertex"===t&&(s(e.vertices[0],e.norm),s(e.vertices[1],e.norm),s(e.vertices[2],e.norm)),"edge"===t&&(s(e.faceCenters[0],e.norm),s(e.faceCenters[1],e.norm),s(e.faceCenters[2],e.norm))});let o=Array.from(n.values());for(let t of o)t.pos[0]/=t.count,t.pos[1]/=t.count,t.pos[2]/=t.count,t.norm[0]/=t.count,t.norm[1]/=t.count,t.norm[2]/=t.count;if(!r&&i){let e=i.getAttribute("position");this.surfacePointsCache={spreadType:t,geometry:i,position:e,positionVersion:xt(e),index:i.index,indexVersion:null===i.index?-1:i.index.version,points:o}}return o}updateState(t,e){if(this.parameters=o(t),"toObject"!==this.parameters.type)this.invalidateSurfaceCaches(),(null===this.parent||this.parent!==this.object)&&(this.removeFromParent(),this.object.parent?.add(this),this.matrix=this.object.matrix,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1);else if(null===this.parent||this.parent.uuid!==this.parameters.toObject.object){this.removeFromParent(),this.invalidateSurfaceCaches();let t=e.scene.find(this.parameters.toObject.object);this.objectForSample=t instanceof s?t:void 0,this.matrix=new u,this.matrixWorldNeedsUpdate=!0,this.matrixAutoUpdate=!1,t&&t.add(this)}this.update(e)}get pendingMediaLoad(){return this._pendingMediaLoad}};export{wt as a};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as n}from"./runtime-chunk-
|
|
1
|
+
import{h as n}from"./runtime-chunk-4Z7ZMHQK.js";function e(o){if(o.component){let t=o.component.instances.indexOf(o);t>=0&&o.component.instances.splice(t,1);for(let t of o.children)n.is(t)&&e(t)}}export{e as a};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as s}from"./runtime-chunk-
|
|
1
|
+
import{e as s}from"./runtime-chunk-NJWB6KRU.js";import{a as t,b as i}from"./runtime-chunk-E527B2XB.js";import{Be as a,Hc as o,Vc as e,Ve as h,Ye as r,Zc as d}from"./runtime-chunk-KPOUV3HD.js";var n=class extends(t(h)){constructor(s,t=15,i=6710886){super(s,t,i),this.object=s,this.name=`PointLightHelper: ${s.uuid}`}raycast(s,t){i(this.object,n.geometryHelper,s,t)}},p=class extends(s(a,n)){constructor(s,t,i){super(),this.super_Entity(s,t),this.castShadow=!0,this.shadow.mapSize.width=1024,this.shadow.mapSize.height=1024,this.shadow.normalBias=1,this.layers.enable(3);let a=this.shadow.camera;a.fov=90,a.aspect=1,a.near=100,a.far=2500;let h=new o(-a.far+this.position.x,-a.far+this.position.y,-a.far+this.position.z),n=new o(a.far+this.position.x,a.far+this.position.y,a.far+this.position.z),p=new d(h,n),c=new r(p,new e(16755200));c.visible=!1,this.gizmos.shadowmap=c,this.update()}update(){if(this.shadow&&(this.shadow.camera.updateProjectionMatrix(),this.gizmos))for(let s in this.gizmos){let t=this.gizmos[s];if(t instanceof r){let s=this.shadow.camera,i=new o(-s.far+this.position.x,-s.far+this.position.y,-s.far+this.position.z),a=new o(s.far+this.position.x,s.far+this.position.y,s.far+this.position.z);t.box.set(i,a),t.updateMatrixWorld(!0)}}}updateMatrixWorld(s){super.updateMatrixWorld(s),this.objectHelper&&this.objectHelper.update()}updateState(s,t){this.updateState_Light(s,t),void 0!==s.distance&&(this.distance=s.distance),void 0!==s.decay&&(this.decay=s.decay),void 0!==s.shadowRadius&&(this.shadow.radius=s.shadowRadius),void 0!==s.shadowResolution&&(this.shadow.mapSize.set(s.shadowResolution,s.shadowResolution),this.shadow.map&&(this.shadow.map.dispose(),this.shadow.map=null))}};export{p as a};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as e}from"./runtime-chunk-
|
|
1
|
+
import{f as e}from"./runtime-chunk-3HKB5WZH.js";var t=class{constructor(t,n){this.enabled=!1,this.effect=new t(n),Object.defineProperty(this,"opacity",{enumerable:!0,set(e){this.effect.blendMode.opacity.value=e},get(){return this.effect.blendMode.opacity.value}}),Object.defineProperty(this,"blendFunction",{enumerable:!0,set(e){this.effect.blendMode.setBlendFunction(Number(e))},get(){return this.effect.blendMode.blendFunction}}),this.blendFunction=e.NORMAL}dispose(){this.effect.dispose()}};export{t as a};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as t}from"./runtime-chunk-
|
|
1
|
+
import{e as t}from"./runtime-chunk-NJWB6KRU.js";import{a as e,b as s}from"./runtime-chunk-E527B2XB.js";import{Ae as a,De as i,Ec as o,Gc as h,Hc as r,Ue as d,We as n,Xe as c}from"./runtime-chunk-KPOUV3HD.js";var l=class extends(e(n)){constructor(t,e=15,s=10066329){super(t,e,s),this.object=t,this.added=!1,this.name=`DirectionalLightHelper: ${t.uuid}`}raycast(t,e){s(this.object,l.geometryHelper,t,e)}},p=class extends(t(i,l)){constructor(t,e,s){super(),this.super_Entity(t,e),this.castShadow=!0,this.shadow.mapSize.width=2048,this.shadow.mapSize.height=2048,this.shadow.normalBias=1,this.layers.enable(3);let a=this.shadow.camera;a.top=1250,a.bottom=-1250,a.right=1250,a.left=-1250,a.near=-1e4,a.far=2500;let i=new c(this.shadow.camera);i.visible=!1,this.gizmos.shadowmap=i}update(){this.shadow.camera.updateProjectionMatrix();for(let t in this.gizmos){let e=this.gizmos[t];e instanceof c&&e.update()}}updateMatrixWorld(t){super.updateMatrixWorld(t),this.objectHelper&&this.objectHelper.update()}updateState(t,e){this.updateState_Light(t,e);let s=void 0!==t.depth&&t.depth!==this.shadow.camera.far||void 0!==t.size&&t.size/2!==this.shadow.camera.right;void 0!==t.size&&function(t,e){t.shadow.camera.right=e/2,t.shadow.camera.left=-e/2,t.shadow.camera.top=e/2,t.shadow.camera.bottom=-e/2,t.shadow.needsUpdate=!0}(this,t.size),void 0!==t.shadowRadius&&(this.shadow.radius=t.shadowRadius),void 0!==t.shadowResolution&&(this.shadow.mapSize.set(t.shadowResolution,t.shadowResolution),this.shadow.map&&(this.shadow.map.dispose(),this.shadow.map=null)),void 0!==t.penumbraSize&&e.scene.markPenumbraSizeDirty(),s&&this.update()}},m=class extends(e(d)){constructor(t,e=6710886){super(t,e),this.object=t,this.matrix=t.matrixWorld,this.name=`SpotLightHelper: ${t.uuid}`}raycast(t,e){s(this.object,m.geometryHelper,t,e)}update(){if(void 0!==this.object){let t=m._vector,e=this.object.distance?this.object.distance:1e3,s=e*Math.tan(this.object.angle);this.cone.scale.set(s,s,e),t.setFromMatrixPosition(this.object.target.matrixWorld),this.cone.lookAt(t);let a=void 0!==this.color?this.color:this.light.color;if(this.cone.material instanceof Array)for(let t=0,e=this.cone.material.length;t<e;t++)this.cone.material[t].color.set(a);else this.cone.material.color.set(a)}}},u=m;u._vector=new r;var w=new r,b=new r,g=new h,v=class extends(t(a,u)){constructor(t,e,s){super(),this.super_Entity(t,e),this.castShadow=!0,this.shadow.mapSize.width=1024,this.shadow.mapSize.height=1024,this.shadow.normalBias=1,this.layers.enable(3);let a=this.shadow.camera;a.fov=2*o.RAD2DEG*this.angle,a.aspect=1,a.near=100,a.far=2500;let i=new c(this.shadow.camera);i.visible=!1,this.gizmos.shadowmap=i,this.update()}update(){this.shadow.camera.updateProjectionMatrix();for(let t in this.gizmos){let e=this.gizmos[t];e instanceof c&&e.update()}}updateMatrixWorld(t){super.updateMatrixWorld(t),b.setFromMatrixPosition(this.matrixWorld),g.setFromRotationMatrix(this.matrixWorld),w.copy(this.up).applyQuaternion(g).negate().multiplyScalar(this.distance),this.target.position.copy(b).add(w),this.target.updateMatrixWorld(),this.objectHelper&&this.objectHelper.update()}updateState(t,e){this.updateState_Light(t,e),void 0!==t.distance&&(this.distance=t.distance),void 0!==t.decay&&(this.decay=t.decay),void 0!==t.angle&&(this.angle=t.angle),void 0!==t.penumbra&&(this.penumbra=t.penumbra),void 0!==t.shadowRadius&&(this.shadow.radius=t.shadowRadius),void 0!==t.penumbraSize&&e.scene.markPenumbraSizeDirty(),void 0!==t.shadowResolution&&(this.shadow.mapSize.set(t.shadowResolution,t.shadowResolution),this.shadow.map&&(this.shadow.map.dispose(),this.shadow.map=null))}};export{p as a,v as b};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,b as t}from"./runtime-chunk-7XPMJMA4.js";import{a as r,b as i,c as s,d as o}from"./runtime-chunk-TRWD4WLH.js";import{ia as a}from"./runtime-chunk-UVOO7ZT4.js";import{h as n,o as h,p,q as c,r as m,s as d,t as l,v as u}from"./runtime-chunk-OOOV6H7H.js";import{f}from"./runtime-chunk-RTLL6WIB.js";import{i as g}from"./runtime-chunk-2PT2WH66.js";import{K as y,za as v}from"./runtime-chunk-NY4SLVL4.js";import{Ce as C,Gc as T,Hc as b,Qc as j,Tc as w,Vc as M,dd as P,fd as x,wd as O,we as A,yd as _,ye as S,ze as F}from"./runtime-chunk-KPOUV3HD.js";var D=new b,W=new S,V=class extends _{constructor(e){let t=new x,r=new O({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],s=[],o={},a=new M(15711266),n=new M(15711266),h=new M(2857471);function p(e,t,r){c(e,r),c(t,r)}function c(e,t){i.push(0,0,0),s.push(t.r,t.g,t.b),void 0===o[e]&&(o[e]=[]),o[e].push(i.length/3-1)}p("n1","n2",a),p("n2","n4",a),p("n4","n3",a),p("n3","n1",a),p("f1","f2",a),p("f2","f4",a),p("f4","f3",a),p("f3","f1",a),p("n1","f1",a),p("n2","f2",a),p("n3","f3",a),p("n4","f4",a),p("p","n1",n),p("p","n2",n),p("p","n3",n),p("p","n4",n),p("u1","u2",h),p("u2","u3",h),p("u3","u1",h),t.setAttribute("position",new P(i,3)),t.setAttribute("color",new P(s,3)),super(t,r),this.type="CameraHelper",this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update()}update(){let e=this.geometry,t=this.pointMap;W.projectionMatrixInverse.elements=[.5112609807824982,-0,-0,-0,-0,.41421356237309503,-0,-0,-0,-0,-0,-.099999,-0,-0,-1.0000000000000002,.100001];let r=.8;U("n1",t,e,W,-1,-1,r),U("n2",t,e,W,1,-1,r),U("n3",t,e,W,-1,1,r),U("n4",t,e,W,1,1,r);let i=r;U("f1",t,e,W,-1,-1,i),U("f2",t,e,W,1,-1,i),U("f3",t,e,W,-1,1,i),U("f4",t,e,W,1,1,i);let s=i;U("u1",t,e,W,.35,1.1,s),U("u2",t,e,W,-.35,1.1,s),U("u3",t,e,W,0,1.55,s),e.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}};function U(e,t,r,i,s,o,a){D.set(s,o,a).unproject(i);let n=t[e];if(void 0!==n){let e=r.getAttribute("position");for(let t=0,r=n.length;t<r;t++)e.setXYZ(n[t],D.x,D.y,D.z)}}var z=class extends(r(V)){constructor(e){super(e),this.object=e,this.name=`CombinedCameraHelper: ${e.uuid}`}updateMatrixWorld(e){super.updateMatrixWorld(e),this.updateTarget()}updateTarget(){let e=this.object.getTarget();this.updateWorldMatrix(!0,!1),this.worldToLocal(e)}raycast(e,t){i(this.object,this.geometry,e,t,!0)}};function I(e){return 1-Math.pow(1-e,3)}var B=new b,H=new b,L=new T,R=new b,k=new b,q=new b,E=class extends(o(S,z)){constructor(e="",t={...v.defaultData,name:""}){super(),this._cameraType="OrthographicCamera",this.targetOffset=y.DefaultTargetOffset,this.isUpVectorFlipped=!1,this.angleOffsetFromUp=0,this.wasMovedByUser=!1,this.wasMovedBySwitchCameraAction=!1,this._createdAt=typeof performance<"u"?performance.now():0,this._tickProjectionTransition=()=>{let e=this._projectionTransition;if(void 0===e)return;if(this.disposed)return void this._endProjectionTransition();e.raf=requestAnimationFrame(this._tickProjectionTransition);let t=E.projectionTransitionRequestRender??e.requestRender;this.updateProjectionMatrix(),t?.()},this.super_Entity(e,t),this.previousProjectionMatrix=new j,this.matrixAutoUpdate=!0,this.width=window.innerWidth,this.height=window.innerHeight;let r=this.width,i=this.height;this.orthoCamera=new C(-.5*r,.5*r,.5*i,-.5*i,-5e4,1e4),this.perspCamera=new F(45,r/i,50,1e4),this.left=this.orthoCamera.left,this.right=this.orthoCamera.right,this.top=this.orthoCamera.top,this.bottom=this.orthoCamera.bottom,this.far=this.orthoCamera.far,this.view=this.orthoCamera.view,this.aspect=this.perspCamera.aspect,this.focus=this.perspCamera.focus,this.filmGauge=this.perspCamera.filmGauge,this.filmOffset=this.perspCamera.filmOffset,this.objectHelper.update()}static withoutProjectionTransition(e){let t=E.projectionTransitionsEnabled;E.projectionTransitionsEnabled=!1;try{return e()}finally{E.projectionTransitionsEnabled=t}}get isPerspectiveCamera(){return"PerspectiveCamera"===this.cameraType}get isOrthographicCamera(){return!this.isPerspectiveCamera}get cameraType(){return this._cameraType}set fov(e){this.perspCamera.fov=e}get fov(){return this.perspCamera.fov}setNear(e,t){"PerspectiveCamera"===e?this.perspCamera.near=t:this.orthoCamera.near=t}setZoom(e,t){t>=0&&("PerspectiveCamera"===e?this.perspCamera.zoom=t:this.orthoCamera.zoom=t)}set cameraType(e){"PerspectiveCamera"===e?this.toPerspective():"OrthographicCamera"===e&&this.toOrthographic()}get near(){return"PerspectiveCamera"===this._cameraType?this.perspCamera.near:this.orthoCamera.near}set near(e){"PerspectiveCamera"===this._cameraType?this.perspCamera.near=e:this.orthoCamera.near=e}get zoom(){return"PerspectiveCamera"===this._cameraType?this.perspCamera.zoom:this.orthoCamera.zoom}set zoom(e){e>=0&&("PerspectiveCamera"===this._cameraType?this.perspCamera.zoom=e:this.orthoCamera.zoom=e)}lookAt(e,t,r){"number"==typeof e&&(e=new b(e,t,r)),super.lookAt(e),this.getWorldPosition(B),this.targetOffset=B.distanceTo(e)}getTarget(e=new b){return this.getWorldDirection(H),this.getWorldPosition(B),H.multiplyScalar(this.targetOffset),e.copy(B).add(H),e}getDistanceToTarget(){let e=this.getTarget();return this.getWorldPosition(B),B.distanceTo(e)}updateUp(){this.getWorldQuaternion(L),R.set(0,0,1).applyQuaternion(L),k.copy(w.DEFAULT_UP),this.isUpVectorFlipped&&k.negate(),k.applyQuaternion(L),q.copy(w.DEFAULT_UP).projectOnPlane(R),this.angleOffsetFromUp=q.angleTo(k),this.angleOffsetFromUp*=q.cross(k).dot(R)>=0?1:-1}updateTransformState(e,t){let r=super.updateTransformState(e,t);return void 0!==e.isUpVectorFlipped&&(this.isUpVectorFlipped=e.isUpVectorFlipped),this.updateUp(),r}getViewFrontToObject(e){let t=e.getWorldPosition(new b),r=e.getWorldDirection(new b).multiplyScalar(this.targetOffset);return{position:t.clone().add(r),target:t}}getViewToTarget(e){let t=this.getWorldDirection(new b).multiplyScalar(this.targetOffset);return{position:e.clone().sub(t),target:e}}getViewToObject(e){let t=new b;return e.getWorldPosition(t),this.getViewToTarget(t)}setViewplaneSize(e,t,r=!1){if(this.aspect=e/t,r){let r=e>t?this.aspect:1,i=e>t?1:this.aspect;this.left=-395*r,this.right=395*r,this.top=1/i*395,this.bottom=1/i*-395}else this.left=.5*-e,this.right=.5*e,this.top=.5*t,this.bottom=.5*-t;this.updateProjectionMatrix()}copyViewPlaneSize(e){this.aspect=e.aspect,this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.updateProjectionMatrix()}toOrthographic(){this.orthoCamera.left=this.left,this.orthoCamera.right=this.right,this.orthoCamera.top=this.top,this.orthoCamera.bottom=this.bottom,this.orthoCamera.view=this.view,this.orthoCamera.far=this.far,this.orthoCamera.updateProjectionMatrix(),this.projectionMatrix=this.orthoCamera.projectionMatrix,this.projectionMatrixInverse=this.orthoCamera.projectionMatrixInverse,this._cameraType="OrthographicCamera",this._applyProjectionTransition(),this.objectHelper&&this.objectHelper.update()}toPerspective(){this.perspCamera.aspect=this.aspect,this.perspCamera.fov=this.fov,this.perspCamera.view=this.view,this.perspCamera.far=this.far,this.perspCamera.updateProjectionMatrix(),this.projectionMatrix=this.perspCamera.projectionMatrix,this.projectionMatrixInverse=this.perspCamera.projectionMatrixInverse,this._cameraType="PerspectiveCamera",this._applyProjectionTransition(),this.objectHelper&&this.objectHelper.update()}get isProjectionTransitioning(){return void 0!==this._projectionTransition}get projectionTransitionProgress(){let e=this._projectionTransition;if(void 0===e)return 1;let t=(performance.now()-e.start)/e.duration;return t>=1?1:t<=0?0:I(t)}get _activeSubCamera(){return"PerspectiveCamera"===this._cameraType?this.perspCamera:this.orthoCamera}_canAnimateProjection(){return E.projectionTransitionsEnabled&&"function"==typeof requestAnimationFrame&&typeof performance<"u"&&performance.now()-this._createdAt>=E.projectionTransitionMinAgeMs}_beginProjectionTransition(e){let t=this._projectionTransition;void 0===t&&(t={from:new j,blend:new j,blendInverse:new j,start:0,duration:E.projectionTransitionDuration,referenceDepth:1,raf:0,requestRender:e},this._projectionTransition=t),t.from.copy(this.projectionMatrix),t.start=performance.now(),t.duration=E.projectionTransitionDuration,t.referenceDepth=Number.isFinite(this.targetOffset)?Math.max(1,this.targetOffset):1,e&&(t.requestRender=e),0!==t.raf&&cancelAnimationFrame(t.raf),t.raf=requestAnimationFrame(this._tickProjectionTransition)}_applyProjectionTransition(){let e=this._projectionTransition;if(void 0===e)return;let t=(performance.now()-e.start)/e.duration;if(t>=1)return void this._endProjectionTransition();let r=I(t),i=e.from.elements,s=this._activeSubCamera.projectionMatrix.elements,o=e.blend.elements,a=e.referenceDepth,n=Math.max(1e-6,i[15]-i[11]*a),h=r*n/(r*n+(1-r)*Math.max(1e-6,s[15]-s[11]*a));for(let e=0;e<16;e++)o[e]=i[e]+(s[e]-i[e])*h;e.blendInverse.copy(e.blend).invert(),this.projectionMatrix=e.blend,this.projectionMatrixInverse=e.blendInverse}_endProjectionTransition(){let e=this._projectionTransition;if(void 0===e)return;0!==e.raf&&cancelAnimationFrame(e.raf),this._projectionTransition=void 0;let t=this._activeSubCamera;this.projectionMatrix=t.projectionMatrix,this.projectionMatrixInverse=t.projectionMatrixInverse}_syncProjectionTransition(e){let t=e._projectionTransition;if(void 0===t)return void(void 0!==this._projectionTransition&&this._endProjectionTransition());let r=this._projectionTransition;void 0===r?(r={from:new j,blend:new j,blendInverse:new j,start:0,duration:1,referenceDepth:1,raf:0,requestRender:void 0},this._projectionTransition=r):0!==r.raf&&(cancelAnimationFrame(r.raf),r.raf=0),r.requestRender=void 0,r.from.copy(t.from),r.start=t.start,r.duration=t.duration,r.referenceDepth=t.referenceDepth,this._applyProjectionTransition()}setFocalLength(e){this.perspCamera.setFocalLength(e),this.toPerspective()}getFocalLength(){return this.perspCamera.getFocalLength()}getEffectiveFOV(){return this.perspCamera.getEffectiveFOV()}getFilmWidth(){return this.perspCamera.getFilmWidth()}getFilmHeight(){return this.perspCamera.getFilmHeight()}setViewOffset(e,t,r,i,s,o){"PerspectiveCamera"===this._cameraType?this.perspCamera.setViewOffset(e,t,r,i,s,o):this.orthoCamera.setViewOffset(e,t,r,i,s,o),this._applyProjectionTransition()}clearViewOffset(){"PerspectiveCamera"===this._cameraType?(this.perspCamera.clearViewOffset(),this.toPerspective()):(this.orthoCamera.clearViewOffset(),this.toOrthographic())}copyHistory(){this.previousProjectionMatrix&&this.previousProjectionMatrix.copy(this.projectionMatrix)}updateProjectionMatrix(){"PerspectiveCamera"===this._cameraType?this.toPerspective():"OrthographicCamera"===this._cameraType&&this.toOrthographic()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}copy(e,t){return super.copy(e,t),this.parent=e.parent,this.orthoCamera.copy(e.orthoCamera),this.perspCamera.copy(e.perspCamera),this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.far=e.far,this.view=null===e.view?null:Object.assign({},e.view),this._cameraType=e._cameraType,this.aspect=e.aspect,this.fov=e.fov,this.focus=e.focus,this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this.targetOffset=y.sanitizeTargetOffset(e.targetOffset),this.updateProjectionMatrix(),this._syncProjectionTransition(e),this}toCameraState(e=[]){let t={type:this.cameraType,far:this.far,orthographic:{near:this.orthoCamera.near,zoom:this.orthoCamera.zoom},perspective:{near:this.perspCamera.near,fov:this.perspCamera.fov,zoom:this.perspCamera.zoom},up:this.up.toArray(),targetOffset:this.targetOffset,isUpVectorFlipped:this.isUpVectorFlipped};return f(t,e)}updateCameraSubtype(e,t){let r="perspective"===e?"PerspectiveCamera":"OrthographicCamera";void 0!==t.zoom&&this.setZoom(r,t.zoom),void 0!==t.near&&this.setNear(r,t.near),void 0!==t.fov&&"PerspectiveCamera"===r&&(this.fov=t.fov)}updateState(e,t){this.updateCameraState(e,t)}updateCameraState(e,t){this.updateState_Entity(e,t),void 0!==e.far&&(this.far=e.far),void 0!==e.orthographic&&this.updateCameraSubtype("orthographic",e.orthographic),void 0!==e.perspective&&this.updateCameraSubtype("perspective",e.perspective),void 0!==e.type&&(e.type!==this._cameraType&&this._canAnimateProjection()&&this._beginProjectionTransition(t?.shared.requestRender),this.cameraType=e.type),void 0!==e.up&&this.up.fromArray(e.up.map(e=>"number"==typeof e?e:0)),void 0!==e.targetOffset&&(this.targetOffset=y.sanitizeTargetOffset(e.targetOffset)),void 0!==e.isUpVectorFlipped&&(this.isUpVectorFlipped=e.isUpVectorFlipped),this.updateProjectionMatrix()}updateByPatchedOp(e,t,r){super.updateByPatchedOp(e,t,r),1===e.path.length&&0===e.type&&this.updateCameraSubtype(e.path[0],e.props)}toState(e){return{...super.toState(e),...this.toCameraState(e),type:this.cameraType}}},G=E;G.projectionTransitionsEnabled=!1,G.projectionTransitionDuration=350,G.projectionTransitionMinAgeMs=1e3;var N=new j,Q=new j,Z=new j,K=new j,X=new j;function Y(e){let t=!1;return e.scene.objects.traverse((e,r)=>{"BooleanGeometry"===r.geometry?.type&&(t=!0)}),t}function J(e,t){let r=e.cloner;return void 0!==r&&r.parent===t?r:void 0}var $=new Float32Array(0);function ee(e,t,r,i){let s=16*(t.children.length+1);$.length<s&&($=new Float32Array(s));let o=0,a=e=>{e.toArray($,16*o),o++},n=!0!==t.parameters.hideBase;n&&a(i),Z.copy(e.matrix);for(let e of t.children)!g(e)||!1===e.playModeVisible||(K.copy(e.matrix).multiply(e.pivotMatrix),X.multiplyMatrices(Z,K),(!n||!X.equals(i))&&a(X));try{return 0===o?0:l(r,$.subarray(0,16*o))}finally{d(r)}}var te,re=class extends a{constructor(e,t,r){super(e,t),this.data=t,this.meshSetAddresses=[],this.needsTransformForDownstream=!1,this.geometry=new x,this.onAfterRender=(e,t,r,i,s,o)=>{super.onAfterRender(e,t,r,i,s,o),this.recomputeBoolean()},this.geometry.userData.parameters={width:0,height:0,depth:0}}get booleanOp(){return this.data.geometry.operation}get phongAngle(){return this.data.geometry.phongAngle??45}get isLOD(){return this.recomputeBoolean(),!1}updateByPatchedOp(e,t,r){super.updateByPatchedOp(e,t,r),1===e.path.length&&"geometry"===e.path[0]&&0===e.type&&void 0!==e.props.operation&&(this.freeBooleanPointer(),this.resetBBoxNeedsUpdate())}freeBooleanPointer(){super.freeBooleanPointer(),this.geometry.dispose()}recomputeBoolean(r,i=!0){if(-1!==this.booleanMeshSetAddress&&!r)return;for(let e=0;e<this.children.length;e++){let t=this.children[e];t instanceof re&&!0===t.dataPatched.visible&&t.recomputeBoolean(!0===r,i)}this.meshSetAddresses=[];for(let e=0;e<this.children.length;e++){let t=this.children[e];if(t instanceof u&&!0===t.dataPatched.visible&&t.geometry.attributes.position?.count>0&&t.geometry.drawRange.count>0&&0!==t.booleanMeshSetAddress){N.copy(t.matrix).multiply(t.pivotMatrix);try{let e=J(t,this);if(-1===t.booleanMeshSetAddress){if((t.geometry.index??t.geometry.getAttribute("position")).count/3<15e5){let s=h(t.geometry,!0===r,i);t.booleanMeshSetAddress=void 0===e||-1===s?s:ee(t,e,s,N)}if(-1===t.booleanMeshSetAddress)return;void 0===e&&m(t.booleanMeshSetAddress,N),t.booleanMatrixInvOld.copy(N).invert(),t.booleanWasTransformed=!1}else t instanceof re&&!0===t.needsTransformForDownstream?(void 0===e?m(t.booleanMeshSetAddress,N):t.booleanMeshSetAddress=ee(t,e,t.booleanMeshSetAddress,N),t.needsTransformForDownstream=!1):!0===t.booleanWasTransformed&&(m(t.booleanMeshSetAddress,Q.multiplyMatrices(N,t.booleanMatrixInvOld)),t.booleanMatrixInvOld.copy(N).invert(),t.booleanWasTransformed=!1)}catch(e){console.error(e),t.booleanMeshSetAddress=0,t.geometry.userData.booleanOperationDidFail=!0;continue}if(0===t.booleanMeshSetAddress)continue;this.meshSetAddresses.push(t.booleanMeshSetAddress),t.geometry.userData.booleanOperationDidFail=!1}}if(0===this.meshSetAddresses.length){if(0!==this.geometry.getAttribute("position")?.array.length){let e=this.geometry;e.dispose(),this.geometry=new x,this.geometry.userData=e.userData,this.geometry.boundingSphere=e.boundingSphere,this.geometry.setAttribute("position",new P([],3))}return void this.geometry.setDrawRange(0,0)}if(!0===r)return c(this.meshSetAddresses,this.booleanOp);let s=this.geometry;s.dispose(),this.geometry=new x,this.geometry.userData=s.userData,this.geometry.boundingSphere=s.boundingSphere;try{this.booleanMeshSetAddress=p(this.meshSetAddresses,this.booleanOp,this.geometry,this.phongAngle)}catch(e){this.booleanMeshSetAddress=0,this.geometry.userData.booleanOperationDidFail=!0,console.error(e)}this.booleanMatrixInvOld.copy(this.matrix).invert(),this.needsTransformForDownstream=!0,e(this),t(this)}dispose(){super.dispose(),this.geometry.dispose()}};(te||(te={})).is=function(e){return n.is(e)&&e instanceof A};var ie=(e,t)=>class extends(o(e,t)){updateState_Light(e,t){if(this.updateState_Entity(e,t),void 0!==e.color&&(this.color=t.shared.color(e.color)),void 0!==e.intensity&&(this.intensity=e.intensity*Math.PI),void 0!==e.depth){let t=this.shadow;t.camera.far=e.depth,t.needsUpdate=!0}void 0!==e.shadows&&(this.castShadow=e.shadows)}},se=e=>e instanceof u,oe=e=>null!==e&&e instanceof re,ae=e=>s.is(e);export{G as a,Y as b,re as c,te as d,ie as e,se as f,oe as g,ae as h};
|
|
1
|
+
import{a as e,b as t}from"./runtime-chunk-TCS5UKOO.js";import{a as r,b as i,c as s,d as o}from"./runtime-chunk-E527B2XB.js";import{ia as a}from"./runtime-chunk-ZOVWUNB5.js";import{h as n,o as h,p,q as c,r as m,s as d,t as l,v as u}from"./runtime-chunk-4Z7ZMHQK.js";import{f}from"./runtime-chunk-RTLL6WIB.js";import{i as g}from"./runtime-chunk-2PT2WH66.js";import{K as y,za as v}from"./runtime-chunk-NY4SLVL4.js";import{Ce as C,Gc as T,Hc as b,Qc as j,Tc as w,Vc as M,dd as P,fd as x,wd as O,we as A,yd as _,ye as S,ze as F}from"./runtime-chunk-KPOUV3HD.js";var D=new b,W=new S,V=class extends _{constructor(e){let t=new x,r=new O({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],s=[],o={},a=new M(15711266),n=new M(15711266),h=new M(2857471);function p(e,t,r){c(e,r),c(t,r)}function c(e,t){i.push(0,0,0),s.push(t.r,t.g,t.b),void 0===o[e]&&(o[e]=[]),o[e].push(i.length/3-1)}p("n1","n2",a),p("n2","n4",a),p("n4","n3",a),p("n3","n1",a),p("f1","f2",a),p("f2","f4",a),p("f4","f3",a),p("f3","f1",a),p("n1","f1",a),p("n2","f2",a),p("n3","f3",a),p("n4","f4",a),p("p","n1",n),p("p","n2",n),p("p","n3",n),p("p","n4",n),p("u1","u2",h),p("u2","u3",h),p("u3","u1",h),t.setAttribute("position",new P(i,3)),t.setAttribute("color",new P(s,3)),super(t,r),this.type="CameraHelper",this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update()}update(){let e=this.geometry,t=this.pointMap;W.projectionMatrixInverse.elements=[.5112609807824982,-0,-0,-0,-0,.41421356237309503,-0,-0,-0,-0,-0,-.099999,-0,-0,-1.0000000000000002,.100001];let r=.8;U("n1",t,e,W,-1,-1,r),U("n2",t,e,W,1,-1,r),U("n3",t,e,W,-1,1,r),U("n4",t,e,W,1,1,r);let i=r;U("f1",t,e,W,-1,-1,i),U("f2",t,e,W,1,-1,i),U("f3",t,e,W,-1,1,i),U("f4",t,e,W,1,1,i);let s=i;U("u1",t,e,W,.35,1.1,s),U("u2",t,e,W,-.35,1.1,s),U("u3",t,e,W,0,1.55,s),e.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}};function U(e,t,r,i,s,o,a){D.set(s,o,a).unproject(i);let n=t[e];if(void 0!==n){let e=r.getAttribute("position");for(let t=0,r=n.length;t<r;t++)e.setXYZ(n[t],D.x,D.y,D.z)}}var z=class extends(r(V)){constructor(e){super(e),this.object=e,this.name=`CombinedCameraHelper: ${e.uuid}`}updateMatrixWorld(e){super.updateMatrixWorld(e),this.updateTarget()}updateTarget(){let e=this.object.getTarget();this.updateWorldMatrix(!0,!1),this.worldToLocal(e)}raycast(e,t){i(this.object,this.geometry,e,t,!0)}};function B(e){return 1-Math.pow(1-e,3)}var I=new b,H=new b,k=new T,E=new b,L=new b,R=new b,q=class extends(o(S,z)){constructor(e="",t={...v.defaultData,name:""}){super(),this._cameraType="OrthographicCamera",this.targetOffset=y.DefaultTargetOffset,this.isUpVectorFlipped=!1,this.angleOffsetFromUp=0,this.wasMovedByUser=!1,this.wasMovedBySwitchCameraAction=!1,this._createdAt=typeof performance<"u"?performance.now():0,this._tickProjectionTransition=()=>{let e=this._projectionTransition;if(void 0===e)return;if(this.disposed)return void this._endProjectionTransition();e.raf=requestAnimationFrame(this._tickProjectionTransition);let t=q.projectionTransitionRequestRender??e.requestRender;this.updateProjectionMatrix(),t?.()},this.super_Entity(e,t),this.previousProjectionMatrix=new j,this.matrixAutoUpdate=!0,this.width=window.innerWidth,this.height=window.innerHeight;let r=this.width,i=this.height;this.orthoCamera=new C(-.5*r,.5*r,.5*i,-.5*i,-5e4,1e4),this.perspCamera=new F(45,r/i,50,1e4),this.left=this.orthoCamera.left,this.right=this.orthoCamera.right,this.top=this.orthoCamera.top,this.bottom=this.orthoCamera.bottom,this.far=this.orthoCamera.far,this.view=this.orthoCamera.view,this.aspect=this.perspCamera.aspect,this.focus=this.perspCamera.focus,this.filmGauge=this.perspCamera.filmGauge,this.filmOffset=this.perspCamera.filmOffset,this.objectHelper.update()}static withoutProjectionTransition(e){let t=q.projectionTransitionsEnabled;q.projectionTransitionsEnabled=!1;try{return e()}finally{q.projectionTransitionsEnabled=t}}get isPerspectiveCamera(){return"PerspectiveCamera"===this.cameraType}get isOrthographicCamera(){return!this.isPerspectiveCamera}get cameraType(){return this._cameraType}set fov(e){this.perspCamera.fov=e}get fov(){return this.perspCamera.fov}setNear(e,t){"PerspectiveCamera"===e?this.perspCamera.near=t:this.orthoCamera.near=t}setZoom(e,t){t>=0&&("PerspectiveCamera"===e?this.perspCamera.zoom=t:this.orthoCamera.zoom=t)}set cameraType(e){"PerspectiveCamera"===e?this.toPerspective():"OrthographicCamera"===e&&this.toOrthographic()}get near(){return"PerspectiveCamera"===this._cameraType?this.perspCamera.near:this.orthoCamera.near}set near(e){"PerspectiveCamera"===this._cameraType?this.perspCamera.near=e:this.orthoCamera.near=e}get zoom(){return"PerspectiveCamera"===this._cameraType?this.perspCamera.zoom:this.orthoCamera.zoom}set zoom(e){e>=0&&("PerspectiveCamera"===this._cameraType?this.perspCamera.zoom=e:this.orthoCamera.zoom=e)}lookAt(e,t,r){"number"==typeof e&&(e=new b(e,t,r)),super.lookAt(e),this.getWorldPosition(I),this.targetOffset=I.distanceTo(e)}getTarget(e=new b){return this.getWorldDirection(H),this.getWorldPosition(I),H.multiplyScalar(this.targetOffset),e.copy(I).add(H),e}getDistanceToTarget(){let e=this.getTarget();return this.getWorldPosition(I),I.distanceTo(e)}updateUp(){this.getWorldQuaternion(k),E.set(0,0,1).applyQuaternion(k),L.copy(w.DEFAULT_UP),this.isUpVectorFlipped&&L.negate(),L.applyQuaternion(k),R.copy(w.DEFAULT_UP).projectOnPlane(E),this.angleOffsetFromUp=R.angleTo(L),this.angleOffsetFromUp*=R.cross(L).dot(E)>=0?1:-1}updateTransformState(e,t){let r=super.updateTransformState(e,t);return void 0!==e.isUpVectorFlipped&&(this.isUpVectorFlipped=e.isUpVectorFlipped),this.updateUp(),r}getViewFrontToObject(e){let t=e.getWorldPosition(new b),r=e.getWorldDirection(new b).multiplyScalar(this.targetOffset);return{position:t.clone().add(r),target:t}}getViewToTarget(e){let t=this.getWorldDirection(new b).multiplyScalar(this.targetOffset);return{position:e.clone().sub(t),target:e}}getViewToObject(e){let t=new b;return e.getWorldPosition(t),this.getViewToTarget(t)}setViewplaneSize(e,t,r=!1){if(this.aspect=e/t,r){let r=e>t?this.aspect:1,i=e>t?1:this.aspect;this.left=-395*r,this.right=395*r,this.top=1/i*395,this.bottom=1/i*-395}else this.left=.5*-e,this.right=.5*e,this.top=.5*t,this.bottom=.5*-t;this.updateProjectionMatrix()}copyViewPlaneSize(e){this.aspect=e.aspect,this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.updateProjectionMatrix()}toOrthographic(){this.orthoCamera.left=this.left,this.orthoCamera.right=this.right,this.orthoCamera.top=this.top,this.orthoCamera.bottom=this.bottom,this.orthoCamera.view=this.view,this.orthoCamera.far=this.far,this.orthoCamera.updateProjectionMatrix(),this.projectionMatrix=this.orthoCamera.projectionMatrix,this.projectionMatrixInverse=this.orthoCamera.projectionMatrixInverse,this._cameraType="OrthographicCamera",this._applyProjectionTransition(),this.objectHelper&&this.objectHelper.update()}toPerspective(){this.perspCamera.aspect=this.aspect,this.perspCamera.fov=this.fov,this.perspCamera.view=this.view,this.perspCamera.far=this.far,this.perspCamera.updateProjectionMatrix(),this.projectionMatrix=this.perspCamera.projectionMatrix,this.projectionMatrixInverse=this.perspCamera.projectionMatrixInverse,this._cameraType="PerspectiveCamera",this._applyProjectionTransition(),this.objectHelper&&this.objectHelper.update()}get isProjectionTransitioning(){return void 0!==this._projectionTransition}get projectionTransitionProgress(){let e=this._projectionTransition;if(void 0===e)return 1;let t=(performance.now()-e.start)/e.duration;return t>=1?1:t<=0?0:B(t)}get _activeSubCamera(){return"PerspectiveCamera"===this._cameraType?this.perspCamera:this.orthoCamera}_canAnimateProjection(){return q.projectionTransitionsEnabled&&"function"==typeof requestAnimationFrame&&typeof performance<"u"&&performance.now()-this._createdAt>=q.projectionTransitionMinAgeMs}_beginProjectionTransition(e){let t=this._projectionTransition;void 0===t&&(t={from:new j,blend:new j,blendInverse:new j,start:0,duration:q.projectionTransitionDuration,referenceDepth:1,raf:0,requestRender:e},this._projectionTransition=t),t.from.copy(this.projectionMatrix),t.start=performance.now(),t.duration=q.projectionTransitionDuration,t.referenceDepth=Number.isFinite(this.targetOffset)?Math.max(1,this.targetOffset):1,e&&(t.requestRender=e),0!==t.raf&&cancelAnimationFrame(t.raf),t.raf=requestAnimationFrame(this._tickProjectionTransition)}_applyProjectionTransition(){let e=this._projectionTransition;if(void 0===e)return;let t=(performance.now()-e.start)/e.duration;if(t>=1)return void this._endProjectionTransition();let r=B(t),i=e.from.elements,s=this._activeSubCamera.projectionMatrix.elements,o=e.blend.elements,a=e.referenceDepth,n=Math.max(1e-6,i[15]-i[11]*a),h=r*n/(r*n+(1-r)*Math.max(1e-6,s[15]-s[11]*a));for(let e=0;e<16;e++)o[e]=i[e]+(s[e]-i[e])*h;e.blendInverse.copy(e.blend).invert(),this.projectionMatrix=e.blend,this.projectionMatrixInverse=e.blendInverse}_endProjectionTransition(){let e=this._projectionTransition;if(void 0===e)return;0!==e.raf&&cancelAnimationFrame(e.raf),this._projectionTransition=void 0;let t=this._activeSubCamera;this.projectionMatrix=t.projectionMatrix,this.projectionMatrixInverse=t.projectionMatrixInverse}_syncProjectionTransition(e){let t=e._projectionTransition;if(void 0===t)return void(void 0!==this._projectionTransition&&this._endProjectionTransition());let r=this._projectionTransition;void 0===r?(r={from:new j,blend:new j,blendInverse:new j,start:0,duration:1,referenceDepth:1,raf:0,requestRender:void 0},this._projectionTransition=r):0!==r.raf&&(cancelAnimationFrame(r.raf),r.raf=0),r.requestRender=void 0,r.from.copy(t.from),r.start=t.start,r.duration=t.duration,r.referenceDepth=t.referenceDepth,this._applyProjectionTransition()}setFocalLength(e){this.perspCamera.setFocalLength(e),this.toPerspective()}getFocalLength(){return this.perspCamera.getFocalLength()}getEffectiveFOV(){return this.perspCamera.getEffectiveFOV()}getFilmWidth(){return this.perspCamera.getFilmWidth()}getFilmHeight(){return this.perspCamera.getFilmHeight()}setViewOffset(e,t,r,i,s,o){"PerspectiveCamera"===this._cameraType?this.perspCamera.setViewOffset(e,t,r,i,s,o):this.orthoCamera.setViewOffset(e,t,r,i,s,o),this._applyProjectionTransition()}clearViewOffset(){"PerspectiveCamera"===this._cameraType?(this.perspCamera.clearViewOffset(),this.toPerspective()):(this.orthoCamera.clearViewOffset(),this.toOrthographic())}copyHistory(){this.previousProjectionMatrix&&this.previousProjectionMatrix.copy(this.projectionMatrix)}updateProjectionMatrix(){"PerspectiveCamera"===this._cameraType?this.toPerspective():"OrthographicCamera"===this._cameraType&&this.toOrthographic()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}copy(e,t){return super.copy(e,t),this.parent=e.parent,this.orthoCamera.copy(e.orthoCamera),this.perspCamera.copy(e.perspCamera),this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.far=e.far,this.view=null===e.view?null:Object.assign({},e.view),this._cameraType=e._cameraType,this.aspect=e.aspect,this.fov=e.fov,this.focus=e.focus,this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this.targetOffset=y.sanitizeTargetOffset(e.targetOffset),this.updateProjectionMatrix(),this._syncProjectionTransition(e),this}toCameraState(e=[]){let t={type:this.cameraType,far:this.far,orthographic:{near:this.orthoCamera.near,zoom:this.orthoCamera.zoom},perspective:{near:this.perspCamera.near,fov:this.perspCamera.fov,zoom:this.perspCamera.zoom},up:this.up.toArray(),targetOffset:this.targetOffset,isUpVectorFlipped:this.isUpVectorFlipped};return f(t,e)}updateCameraSubtype(e,t){let r="perspective"===e?"PerspectiveCamera":"OrthographicCamera";void 0!==t.zoom&&this.setZoom(r,t.zoom),void 0!==t.near&&this.setNear(r,t.near),void 0!==t.fov&&"PerspectiveCamera"===r&&(this.fov=t.fov)}updateState(e,t){this.updateCameraState(e,t)}updateCameraState(e,t){this.updateState_Entity(e,t),void 0!==e.far&&(this.far=e.far),void 0!==e.orthographic&&this.updateCameraSubtype("orthographic",e.orthographic),void 0!==e.perspective&&this.updateCameraSubtype("perspective",e.perspective),void 0!==e.type&&(e.type!==this._cameraType&&this._canAnimateProjection()&&this._beginProjectionTransition(t?.shared.requestRender),this.cameraType=e.type),void 0!==e.up&&this.up.fromArray(e.up.map(e=>"number"==typeof e?e:0)),void 0!==e.targetOffset&&(this.targetOffset=y.sanitizeTargetOffset(e.targetOffset)),void 0!==e.isUpVectorFlipped&&(this.isUpVectorFlipped=e.isUpVectorFlipped),this.updateProjectionMatrix()}updateByPatchedOp(e,t,r){super.updateByPatchedOp(e,t,r),1===e.path.length&&0===e.type&&this.updateCameraSubtype(e.path[0],e.props)}toState(e){return{...super.toState(e),...this.toCameraState(e),type:this.cameraType}}},G=q;G.projectionTransitionsEnabled=!1,G.projectionTransitionDuration=350,G.projectionTransitionMinAgeMs=1e3;var N=new j,Z=new j,Q=new j,K=new j,X=new j;function Y(e){let t=!1;return e.scene.objects.traverse((e,r)=>{"BooleanGeometry"===r.geometry?.type&&(t=!0)}),t}function $(e,t){let r=e.cloner;return void 0!==r&&r.parent===t?r:void 0}var J=new Float32Array(0);function ee(e,t,r,i){let s=16*(t.children.length+1);J.length<s&&(J=new Float32Array(s));let o=0,a=e=>{e.toArray(J,16*o),o++},n=!0!==t.parameters.hideBase;n&&a(i),Q.copy(e.matrix);for(let e of t.children)!g(e)||!1===e.playModeVisible||(K.copy(e.matrix).multiply(e.pivotMatrix),X.multiplyMatrices(Q,K),(!n||!X.equals(i))&&a(X));try{return 0===o?0:l(r,J.subarray(0,16*o))}finally{d(r)}}var te,re=class extends a{constructor(e,t,r){super(e,t),this.data=t,this.meshSetAddresses=[],this.needsTransformForDownstream=!1,this.geometry=new x,this.onAfterRender=(e,t,r,i,s,o)=>{super.onAfterRender(e,t,r,i,s,o),this.recomputeBoolean()},this.geometry.userData.parameters={width:0,height:0,depth:0}}get booleanOp(){return this.data.geometry.operation}get phongAngle(){return this.data.geometry.phongAngle??45}get isLOD(){return this.recomputeBoolean(),!1}updateByPatchedOp(e,t,r){super.updateByPatchedOp(e,t,r),1===e.path.length&&"geometry"===e.path[0]&&0===e.type&&void 0!==e.props.operation&&(this.freeBooleanPointer(),this.resetBBoxNeedsUpdate())}freeBooleanPointer(){super.freeBooleanPointer(),this.geometry.dispose()}recomputeBoolean(r,i=!0){if(-1!==this.booleanMeshSetAddress&&!r)return;for(let e=0;e<this.children.length;e++){let t=this.children[e];t instanceof re&&!0===t.dataPatched.visible&&t.recomputeBoolean(!0===r,i)}this.meshSetAddresses=[];for(let e=0;e<this.children.length;e++){let t=this.children[e];if(t instanceof u&&!0===t.dataPatched.visible&&t.geometry.attributes.position?.count>0&&t.geometry.drawRange.count>0&&0!==t.booleanMeshSetAddress){N.copy(t.matrix).multiply(t.pivotMatrix);try{let e=$(t,this);if(-1===t.booleanMeshSetAddress){if((t.geometry.index??t.geometry.getAttribute("position")).count/3<15e5){let s=h(t.geometry,!0===r,i);t.booleanMeshSetAddress=void 0===e||-1===s?s:ee(t,e,s,N)}if(-1===t.booleanMeshSetAddress)return;void 0===e&&m(t.booleanMeshSetAddress,N),t.booleanMatrixInvOld.copy(N).invert(),t.booleanWasTransformed=!1}else t instanceof re&&!0===t.needsTransformForDownstream?(void 0===e?m(t.booleanMeshSetAddress,N):t.booleanMeshSetAddress=ee(t,e,t.booleanMeshSetAddress,N),t.needsTransformForDownstream=!1):!0===t.booleanWasTransformed&&(m(t.booleanMeshSetAddress,Z.multiplyMatrices(N,t.booleanMatrixInvOld)),t.booleanMatrixInvOld.copy(N).invert(),t.booleanWasTransformed=!1)}catch(e){console.error(e),t.booleanMeshSetAddress=0,t.geometry.userData.booleanOperationDidFail=!0;continue}if(0===t.booleanMeshSetAddress)continue;this.meshSetAddresses.push(t.booleanMeshSetAddress),t.geometry.userData.booleanOperationDidFail=!1}}if(0===this.meshSetAddresses.length){if(0!==this.geometry.getAttribute("position")?.array.length){let e=this.geometry;e.dispose(),this.geometry=new x,this.geometry.userData=e.userData,this.geometry.boundingSphere=e.boundingSphere,this.geometry.setAttribute("position",new P([],3))}return void this.geometry.setDrawRange(0,0)}if(!0===r)return c(this.meshSetAddresses,this.booleanOp);let s=this.geometry;s.dispose(),this.geometry=new x,this.geometry.userData=s.userData,this.geometry.boundingSphere=s.boundingSphere;try{this.booleanMeshSetAddress=p(this.meshSetAddresses,this.booleanOp,this.geometry,this.phongAngle)}catch(e){this.booleanMeshSetAddress=0,this.geometry.userData.booleanOperationDidFail=!0,console.error(e)}this.booleanMatrixInvOld.copy(this.matrix).invert(),this.needsTransformForDownstream=!0,e(this),t(this)}dispose(){super.dispose(),this.geometry.dispose()}};(te||(te={})).is=function(e){return n.is(e)&&e instanceof A};var ie=(e,t)=>class extends(o(e,t)){updateState_Light(e,t){if(this.updateState_Entity(e,t),void 0!==e.color&&(this.color=t.shared.color(e.color)),void 0!==e.intensity&&(this.intensity=e.intensity*Math.PI),void 0!==e.depth){let t=this.shadow;t.camera.far=e.depth,t.needsUpdate=!0}void 0!==e.shadows&&(this.castShadow=e.shadows)}},se=e=>e instanceof u,oe=e=>null!==e&&e instanceof re,ae=e=>s.is(e);export{G as a,Y as b,re as c,te as d,ie as e,se as f,oe as g,ae as h};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as t}from"./runtime-chunk-
|
|
1
|
+
import{a as t}from"./runtime-chunk-2MWROX54.js";import{d as e}from"./runtime-chunk-E527B2XB.js";import{Uc as s}from"./runtime-chunk-KPOUV3HD.js";var r=class extends(e(s,t)){constructor(t,e){super(),this.super_Entity(t,e),this.objectHelper.update(),"Empty"===this.data.type&&(this.objectHelper.visible=!1)}updateState(t,e){this.updateState_Entity(t,e),"buffer"in t&&1===Object.keys(t).length&&e.scene.reloadSplats()}};export{r as a};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{v as e}from"./runtime-chunk-OOOV6H7H.js";import{$c as t,Gc as s,Hc as a,Hd as i,Ib as r,Ic as n,Ie as h,Qc as o,Vc as l,Yd as d,Zd as c,md as u,nd as g}from"./runtime-chunk-KPOUV3HD.js";var p=null;function b(e){p=e}function S(){return p}var m=null;function f(e){m=e}function M(){return m}var y=new l;function R(e,t,s){return y.setRGB(e,t,s,r),{r:y.r,g:y.g,b:y.b}}var w=(e,t)=>"number"==typeof e&&Number.isFinite(e)?e:t,x=e=>Array.isArray(e)&&"number"==typeof e[0]&&"number"==typeof e[1]?[e[0],e[1]]:[0,0];function v(e,t,s){let a,i=w(e.angle,0),[r,n]=x(e.offset),[h,o]=x(e.morph),l=e.colors??[],d=e.steps??[],c=Math.min(10,l.length,d.length);if(0===c)return[1,1,1,1];if(1===e.gradientType){let e=3*(t+h)-(t+r)-1,l=3*(s+o)-(s+n)-1;a=Math.hypot(e,l)+i}else if(2===e.gradientType){let e=-1*Math.atan2(t+h-.5+r,s+o-.5+n),l=i/Math.PI/-2+.5*e/Math.PI;a=l-Math.floor(l)}else{let e=.5+h/(0!==t?t:1e-6),l=o/(0!==s?s:1e-6),d=Math.cos(i)*e-Math.sin(i)*l,c=Math.sin(i)*e+Math.cos(i)*l,u=d*d+c*c;a=u>1e-12?(((t-.5+r)/2+d/2)*d+((s-.5+n)/2+c/2)*c)/u:0}let u=l[0][0],g=l[0][1],p=l[0][2],b=l[0][3];for(let t=1;t<c;t++){let s=d[t-1],i=d[t]-s,r=0!==i?Math.min(1,Math.max(0,(a-s)/i)):a>=s?1:0;e.smooth&&(r=r*r*(3-2*r)),u+=(l[t][0]-u)*r,g+=(l[t][1]-g)*r,p+=(l[t][2]-p)*r,b+=(l[t][3]-b)*r}return[u,g,p,b]}function A(e,t){let s=e,a=s?.data?.layers;if(a&&"function"==typeof a.forEach){let e=t,s=[];return a.forEach(t=>{let a=t.data;if(!1===a.visible||!0===a.isMask)return;let i=w(a.alpha,1);if(!(i<=0))if("color"===a.type){let t,r=a.color;"string"==typeof r?t="function"==typeof e?.color?e.color(r):void 0:r&&"number"==typeof r.r&&(t=r),t&&s.push({kind:"color",layer:a,rgb:{...R(t.r,t.g,t.b),a:t.a??1},alpha:i})}else"gradient"===a.type&&s.push({kind:"gradient",layer:a,alpha:i})}),0===s.length?null:(e,t)=>{let a=1,i=1,r=1,n=!0;for(let h of s){let s,o,l,d;if("color"===h.kind)({r:s,g:o,b:l}=h.rgb),d=h.rgb.a;else{let[a,i,r,n]=v(h.layer,e,t);({r:s,g:o,b:l}=R(a,i,r)),d=n}let c=n?1:Math.min(1,Math.max(0,d*h.alpha));a+=(s-a)*c,i+=(o-i)*c,r+=(l-r)*c,n=!1}return{r:a,g:i,b:r}}}if(s?.color&&!0===s.color.isColor){let{r:e,g:t,b:a}=s.color;return()=>({r:e,g:t,b:a})}return null}var j=32,I=16384,H=32*I,B=100;function F(e,t){if("torus"===e){let e=t()*Math.PI*2,s=t()*Math.PI*2,a=Math.cos(e),i=Math.sin(e),r=Math.cos(s),n=Math.sin(s);return{x:(1.4+.7*r)*a,y:-(1.4+.7*r)*i,z:.7*n,nx:r*a,ny:-r*i,nz:n,cr:1,cg:1,cb:1}}if("cylinder"===e){let e=t()*Math.PI*2,s=Math.cos(e),a=Math.sin(e);return{x:.8*s,y:1.6*(t()-.5),z:.8*a,nx:s,ny:0,nz:a,cr:1,cg:1,cb:1}}let s=t()*Math.PI*2,a=2*t()-1,i=Math.acos(a),r=Math.sin(i)*Math.cos(s),n=Math.cos(i),h=Math.sin(i)*Math.sin(s);return{x:r,y:n,z:h,nx:r,ny:n,nz:h,cr:1,cg:1,cb:1}}function W(e){let{geometry:t,matrix:s}=e,a=t.getAttribute("position");if(!a||a.count<3)return null;let i=t.getAttribute("normal"),r=t.getAttribute("uv"),h=t.getAttribute("color"),o=t.getIndex(),l=o?o.count/3:a.count/3;if(l<1)return null;let d=(e,t)=>o?o.getX(3*e+t):3*e+t,c=s?s.elements:null,u=s?(new n).getNormalMatrix(s).elements:null,g=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[0]*t+c[4]*s+c[8]*i+c[12]:t},p=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[1]*t+c[5]*s+c[9]*i+c[13]:s},b=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[2]*t+c[6]*s+c[10]*i+c[14]:i},S=new Float64Array(l),m=0;for(let e=0;e<l;e++){let t=d(e,0),s=d(e,1),a=d(e,2),i=g(t),r=p(t),n=b(t),h=g(s)-i,o=p(s)-r,l=b(s)-n,c=g(a)-i,u=p(a)-r,f=b(a)-n,M=o*f-l*u,y=l*c-h*f,R=h*u-o*c;m+=.5*Math.sqrt(M*M+y*y+R*R),S[e]=m}return m<=0?null:{total:m,sample:(t,s)=>{let a=0,n=l-1;for(;a<n;){let e=a+n>>1;S[e]<t?a=e+1:n=e}let o=a,c=d(o,0),m=d(o,1),f=d(o,2),M=s(),y=s();M+y>1&&(M=1-M,y=1-y);let R,w,x,v=1-M-y,A=g(c)*v+g(m)*M+g(f)*y,j=p(c)*v+p(m)*M+p(f)*y,I=b(c)*v+b(m)*M+b(f)*y;if(i){if(R=i.getX(c)*v+i.getX(m)*M+i.getX(f)*y,w=i.getY(c)*v+i.getY(m)*M+i.getY(f)*y,x=i.getZ(c)*v+i.getZ(m)*M+i.getZ(f)*y,u){let e=u[0]*R+u[3]*w+u[6]*x,t=u[1]*R+u[4]*w+u[7]*x,s=u[2]*R+u[5]*w+u[8]*x;R=e,w=t,x=s}}else{let e=g(c),t=p(c),s=b(c),a=g(m)-e,i=p(m)-t,r=b(m)-s,n=g(f)-e,h=p(f)-t,o=b(f)-s;R=i*o-r*h,w=r*n-a*o,x=a*h-i*n}let H=Math.sqrt(R*R+w*w+x*x)||1,B=1,F=1,W=1;if(h)B=h.getX(c)*v+h.getX(m)*M+h.getX(f)*y,F=h.getY(c)*v+h.getY(m)*M+h.getY(f)*y,W=h.getZ(c)*v+h.getZ(m)*M+h.getZ(f)*y;else if(e.sampleColor){let t=r?r.getX(c)*v+r.getX(m)*M+r.getX(f)*y:.5,s=r?r.getY(c)*v+r.getY(m)*M+r.getY(f)*y:.5,a=e.sampleColor(t,s);a&&(B=a.r,F=a.g,W=a.b)}return{x:A,y:j,z:I,nx:R/H,ny:w/H,nz:x/H,cr:B,cg:F,cb:W}}}}function k(e){let t=Math.min(Math.max(1,Math.floor(e.guideStrands)),I),s=function(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}(e.seed??1337),a="object"===e.shape&&e.sampler,i=a?e.samplerRadius??B:B,r=new Float32Array(4*H),n=new Float32Array(H),h=new Float32Array(4*I).fill(1);for(let o=0;o<t;o++){let t=a?e.sampler(s):F(e.shape,s),l=a?t.x:t.x*i,d=a?t.y:t.y*i,c=a?t.z:t.z*i,{nx:u,ny:g,nz:p}=t;h[4*o+0]=t.cr,h[4*o+1]=t.cg,h[4*o+2]=t.cb;let b,S,m,f=32*o,M=(1.8+.8*s())*e.hairLength*i/31,y=.5+1.5*s(),R=(.02+.06*s())*i;Math.abs(g)<.99?(b=-p,S=0,m=u):(b=1,S=0,m=0);let w=Math.sqrt(b*b+S*S+m*m)||1;for(let e=0;e<32;e++){let t=e/31,s=t*t*.4*i,a=R*Math.sin(t*y*Math.PI*2),h=4*(f+e);r[h+0]=l+u*M*e+a*b/w,r[h+1]=d+g*M*e-s+a*S/w,r[h+2]=c+p*M*e+a*m/w,r[h+3]=0===e?0:1,e<31&&(n[f+e]=M)}}return{initialPositions:r,restLengths:n,unitScale:i,rootColors:h}}var O=1/60,C=4,P=new o,L=new s,z=new a,q=new a,X=class extends e{constructor(e,i,r){super(e,i),this.type="HairSystem",this.isHairSystem=!0,this.simRunning=!1,this.previewRequested=!1,this.playModeActive=!1,this.pendingSimSeconds=0,this.simTime=0,this.resetRequested=!0,this.generation=0,this.settledSimSeconds=0,this.lastMotionFingerprint=0,this.lastBoneQuat=new s,this.lastBonePos=new a,this.hasLastBone=!1,this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,this.classicFallbackWarned=!1,this.regenSnapshot=null,this.context=r,this.data=i,this.geometry.setAttribute("position",new t(new Float32Array(0),3)),this.material=new u({colorWrite:!1,depthWrite:!1}),this.frustumCulled=!1,this.scalpMesh=new g(new d(B,48,32),new u({color:5448477})),this.scalpMesh.name="HairScalp",this.add(this.scalpMesh);let n=new h;n.setAttribute("position",new t(new Float32Array(12),3)),n.setIndex([0,2,1,2,3,1]),n.instanceCount=0,this.ribbonMesh=new g(n,new u({visible:!1})),this.ribbonMesh.name="HairRibbons",this.ribbonMesh.frustumCulled=!1,this.ribbonMesh.visible=!1,this.ribbonMesh.matrixAutoUpdate=!1,this.ribbonMesh.updateMatrixWorld=()=>{this.ribbonMesh.matrixWorld.identity()},this.ribbonMesh.updateWorldMatrix=()=>{this.ribbonMesh.matrixWorld.identity()},this.add(this.ribbonMesh),this.activeGuideStrands=i.guideStrands,this.roots=this.buildRoots(),this.regenSnapshot={guideStrands:i.guideStrands,hairLength:i.hairLength,spreadRadius:i.spreadRadius,headShape:i.headShape,baseObjectId:i.baseObjectId},this.applyScalpState(),this.applyShadowState(),this.syncSimRunning()}update(e){!this.simRunning||(this.pendingSimSeconds=Math.min(this.pendingSimSeconds+e/1e3,4*O*2),this.trackMotionRest(e/1e3))}trackMotionRest(e){this.boneTransform(L,z);let t=this.hasLastBone&&(Math.abs(this.lastBoneQuat.dot(L))<.9999995||this.lastBonePos.distanceToSquared(z)>1e-8),s=this.motionFingerprint(),a=!this.hasLastBone||t||this.resetRequested||s!==this.lastMotionFingerprint||this.data.windStrength>.001;this.lastBoneQuat.copy(L),this.lastBonePos.copy(z),this.lastMotionFingerprint=s,this.hasLastBone=!0,this.settledSimSeconds=a?0:this.settledSimSeconds+e}motionFingerprint(){let e=this.data;return e.gravity+2*e.damping+3*e.localStiffness+4*e.globalStiffness+5*e.globalRange+6*e.stiffnessFalloff+7*e.windStrength+8*e.vspCoefficient+9*e.kink+10*e.kinkFrequency+11*e.clumpStrength+12*e.clumpSize+13*e.clumpTipScale}get isSimulating(){return(this.simRunning||this.resetRequested)&&this.visible}get isMotionSettled(){return this.settledSimSeconds>6}get isVisiblyAnimating(){return this.isSimulating&&!this.isMotionSettled}startPreview(){this.previewRequested=!0,this.syncSimRunning()}stopPreview(){this.previewRequested=!1,this.syncSimRunning()}setPlayMode(e){this.playModeActive=e,e&&this.resetSimulation(),this.syncSimRunning()}resetSimulation(){this.resetRequested=!0,this.pendingSimSeconds=0,this.simTime=0,this.settledSimSeconds=0}warnClassicFallbackOnce(){this.classicFallbackWarned||(this.classicFallbackWarned=!0,console.warn("[spline] Hair System strands require the WebGPU renderer — the WebGL fallback shows only the scalp. Reload with ?renderer=webgpu in a WebGPU-capable browser."))}syncSimRunning(){this.simRunning=this.playModeActive||this.previewRequested||this.data.autoPlay}updateState(e,t){super.updateState(e,t),this.updateHairState(e)}updateHairState(e){if((void 0!==e.guideStrands||void 0!==e.hairLength||void 0!==e.spreadRadius||void 0!==e.headShape||void 0!==e.baseObjectId)&&this.regenerate(),(void 0!==e.headShape||void 0!==e.baseObjectId)&&this.applyScalpState(),void 0!==e.headColor){let t=this.scalpMesh.material;!0===t.isMeshBasicMaterial&&t.color.setRGB(e.headColor.r,e.headColor.g,e.headColor.b,r)}(void 0!==e.castShadow||void 0!==e.receiveShadow)&&this.applyShadowState(),void 0!==e.autoPlay&&this.syncSimRunning()}applyShadowState(){let e=this.data.castShadow??!0,t=this.data.receiveShadow??!0;this.castShadow=e,this.receiveShadow=t,this.scalpMesh.castShadow=e,this.scalpMesh.receiveShadow=t,this.ribbonMesh.castShadow=e,this.ribbonMesh.receiveShadow=t}regenerate(){this.activeGuideStrands=Math.max(1,Math.min(Math.floor(this.data.guideStrands),16384)),this.roots=this.buildRoots(),this.generation++,this.regenSnapshot={guideStrands:this.data.guideStrands,hairLength:this.data.hairLength,spreadRadius:this.data.spreadRadius,headShape:this.data.headShape,baseObjectId:this.data.baseObjectId},this.resetSimulation()}checkDataDrift(){let e=this.data,t=this.regenSnapshot;if(null===t||t.guideStrands!==e.guideStrands||t.hairLength!==e.hairLength||t.spreadRadius!==e.spreadRadius||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId){let s=null===t||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId;this.regenerate(),s&&this.applyScalpState()}this.syncSimRunning(),this.applyShadowState(),this.checkBaseDrift()}buildRoots(){let{headShape:e,baseObjectId:t,guideStrands:s,hairLength:a}=this.data;if(this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,"object"===e&&t){let e=this.context.scene.find(t);if(e){this.baseFoundAtRegen=!0,e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),i=t?function(e){let t=[];for(let s of e){let e=W(s);e&&t.push(e)}if(0===t.length)return null;let s=new Float64Array(t.length),a=0;for(let e=0;e<t.length;e++)a+=t[e].total,s[e]=a;return a<=0?null:e=>{let i=e()*a,r=0,n=t.length-1;for(;r<n;){let e=r+n>>1;s[e]<i?r=e+1:n=e}let h=0===r?i:i-s[r-1];return t[r].sample(h,e)}}(t.sources):null;if(this.baseSourceGeomsAtRegen=t?.sources.map(e=>e.geometry)??[],this.baseSourceHashesAtRegen=t?.hashes??[],this.baseColorHashAtRegen=t?.colorHash??0,t&&i){let r=this.baseWorldScale(e),n=Math.max(t.radius*r,.001);this.baseScaleAtRegen=r;let h=r;return k({shape:"object",guideStrands:s,hairLength:a,sampler:e=>{let t=i(e);return{...t,x:t.x*h,y:t.y*h,z:t.z*h}},samplerRadius:n})}}}return k({shape:"object"===e?"sphere":e,guideStrands:s,hairLength:a})}collectBaseSources(e){let t=[],s=[],a=0,i=0;P.copy(e.matrixWorld).invert();let r=P.clone(),n=h=>{if(!0===h.isHairSystem||h!==e&&!1===h.visible)return;let l=h.geometry;if(!0===h.isMesh&&l&&(l.getAttribute("position")?.count??0)>=3){let n=h===e?void 0:(new o).multiplyMatrices(r,h.matrixWorld),d=Array.isArray(h.material)?h.material[0]:h.material;t.push({geometry:l,matrix:n,sampleColor:A(d,this.context.shared)??void 0}),s.push(X.matrixHash(n)),i+=function(e,t){let s=e,a=0,i=1,r=e=>{a+=e*i,i+=1},n=s?.data?.layers;if(n&&"function"==typeof n.forEach){let e=t;n.forEach(t=>{let s=t.data;if(!1!==s.visible)if("color"===s.type){let t=s.color,a="string"==typeof t?"function"==typeof e?.color?e.color(t):void 0:t;a&&"number"==typeof a.r&&(r(a.r),r(a.g),r(a.b)),r(w(s.alpha,1))}else if("gradient"===s.type){let e=s;for(let t of e.colors??[])r(t[0]),r(t[1]),r(t[2]),r(t[3]);for(let t of e.steps??[])r(t);r(w(e.angle,0)),r(e.gradientType),r(e.smooth?1:0)}})}else s?.color&&!0===s.color.isColor&&(r(s.color.r),r(s.color.g),r(s.color.b));return a}(d,this.context.shared),null===l.boundingSphere&&l.computeBoundingSphere();let c=l.boundingSphere;if(c){let e=0,t=1;n?(z.copy(c.center).applyMatrix4(n),e=z.length(),t=X.matrixMaxScale(n)):e=c.center.length(),a=Math.max(a,e+c.radius*t)}}for(let e of h.children)n(e)};return n(e),0===t.length?null:{sources:t,hashes:s,radius:Math.max(a,.001),colorHash:i}}static matrixHash(e){if(!e)return 0;let t=e.elements,s=0;for(let e=0;e<16;e++)s+=t[e]*(e+1);return s}static matrixMaxScale(e){let t=e.elements,s=Math.hypot(t[0],t[1],t[2]),a=Math.hypot(t[4],t[5],t[6]),i=Math.hypot(t[8],t[9],t[10]);return Math.max(s,a,i,1e-6)}baseWorldScale(e){return P.copy(e.matrixWorld).decompose(z,L,q),Math.max(Math.abs(q.x),Math.abs(q.y),Math.abs(q.z),1e-6)}get widthWorldScale(){return"object"===this.data.headShape&&this.data.baseObjectId&&this.baseScaleAtRegen>0?this.baseScaleAtRegen:1}checkBaseDrift(){if("object"!==this.data.headShape||!this.data.baseObjectId)return;let e=this.context.scene.find(this.data.baseObjectId);if(!e)return;if(!this.baseFoundAtRegen)return void this.regenerate();e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),s=t?.sources??[],a=t?.hashes??[],i=this.baseSourceGeomsAtRegen,r=this.baseSourceHashesAtRegen,n=s.length!==i.length;if(!n)for(let e=0;e<s.length;e++)if(s[e].geometry!==i[e]||Math.abs(a[e]-r[e])>1e-4*Math.max(Math.abs(r[e]),1)){n=!0;break}if(!n&&"object"===this.data.hairColorSource&&(t?.colorHash??0)!==this.baseColorHashAtRegen&&(n=!0),!n&&s.length>0){let t=this.baseWorldScale(e);n=Math.abs(t-this.baseScaleAtRegen)>.001*Math.max(this.baseScaleAtRegen,1e-6)}n&&this.regenerate()}applyScalpState(){let e=this.data.headShape,t="object"===e&&null!==this.data.baseObjectId;this.scalpMesh.visible=!t,!t&&(this.scalpMesh.geometry.dispose(),this.scalpMesh.geometry="torus"===e?new c(140,70,24,48):"cylinder"===e?new i(80,80,160,48,1):new d(B,48,32))}boneTransform(e,t){let s=this.matrixWorld;if("object"===this.data.headShape&&this.data.baseObjectId){let e=this.context.scene.find(this.data.baseObjectId)?.matrixWorld;e&&(s=e)}P.copy(s).decompose(t,e,q)}raycast(e,t){if(!this.scalpMesh.visible)return;let s=[];this.scalpMesh.raycast(e,s);for(let e of s)e.object=this,t.push(e)}get shadowBoundsRadius(){let e="torus"===this.data.headShape?2.6:1.5;return this.roots.unitScale*(e+2.6*Math.max(this.data.hairLength,0))}getShadowBoundsCenter(e){return this.boneTransform(L,e),e}updateEntityBoxSize(e,t){let s=this.shadowBoundsRadius;e.set(0,0,0),t.set(s,s,s)}dispose(){super.dispose(),this.scalpMesh.geometry.dispose(),this.scalpMesh.material.dispose(),this.ribbonMesh.geometry.dispose(),this.ribbonMesh.material.dispose?.(),M()?.release(this)}};export{b as a,S as b,f as c,M as d,j as e,I as f,H as g,B as h,O as i,C as j,X as k};
|
|
1
|
+
import{v as e}from"./runtime-chunk-4Z7ZMHQK.js";import{$c as t,Gc as s,Hc as a,Hd as i,Ib as r,Ic as n,Ie as h,Qc as o,Vc as l,Yd as d,Zd as c,md as u,nd as g}from"./runtime-chunk-KPOUV3HD.js";var p=null;function b(e){p=e}function S(){return p}var m=null;function f(e){m=e}function M(){return m}var y=new l;function R(e,t,s){return y.setRGB(e,t,s,r),{r:y.r,g:y.g,b:y.b}}var w=(e,t)=>"number"==typeof e&&Number.isFinite(e)?e:t,x=e=>Array.isArray(e)&&"number"==typeof e[0]&&"number"==typeof e[1]?[e[0],e[1]]:[0,0];function v(e,t,s){let a,i=w(e.angle,0),[r,n]=x(e.offset),[h,o]=x(e.morph),l=e.colors??[],d=e.steps??[],c=Math.min(10,l.length,d.length);if(0===c)return[1,1,1,1];if(1===e.gradientType){let e=3*(t+h)-(t+r)-1,l=3*(s+o)-(s+n)-1;a=Math.hypot(e,l)+i}else if(2===e.gradientType){let e=-1*Math.atan2(t+h-.5+r,s+o-.5+n),l=i/Math.PI/-2+.5*e/Math.PI;a=l-Math.floor(l)}else{let e=.5+h/(0!==t?t:1e-6),l=o/(0!==s?s:1e-6),d=Math.cos(i)*e-Math.sin(i)*l,c=Math.sin(i)*e+Math.cos(i)*l,u=d*d+c*c;a=u>1e-12?(((t-.5+r)/2+d/2)*d+((s-.5+n)/2+c/2)*c)/u:0}let u=l[0][0],g=l[0][1],p=l[0][2],b=l[0][3];for(let t=1;t<c;t++){let s=d[t-1],i=d[t]-s,r=0!==i?Math.min(1,Math.max(0,(a-s)/i)):a>=s?1:0;e.smooth&&(r=r*r*(3-2*r)),u+=(l[t][0]-u)*r,g+=(l[t][1]-g)*r,p+=(l[t][2]-p)*r,b+=(l[t][3]-b)*r}return[u,g,p,b]}function A(e,t){let s=e,a=s?.data?.layers;if(a&&"function"==typeof a.forEach){let e=t,s=[];return a.forEach(t=>{let a=t.data;if(!1===a.visible||!0===a.isMask)return;let i=w(a.alpha,1);if(!(i<=0))if("color"===a.type){let t,r=a.color;"string"==typeof r?t="function"==typeof e?.color?e.color(r):void 0:r&&"number"==typeof r.r&&(t=r),t&&s.push({kind:"color",layer:a,rgb:{...R(t.r,t.g,t.b),a:t.a??1},alpha:i})}else"gradient"===a.type&&s.push({kind:"gradient",layer:a,alpha:i})}),0===s.length?null:(e,t)=>{let a=1,i=1,r=1,n=!0;for(let h of s){let s,o,l,d;if("color"===h.kind)({r:s,g:o,b:l}=h.rgb),d=h.rgb.a;else{let[a,i,r,n]=v(h.layer,e,t);({r:s,g:o,b:l}=R(a,i,r)),d=n}let c=n?1:Math.min(1,Math.max(0,d*h.alpha));a+=(s-a)*c,i+=(o-i)*c,r+=(l-r)*c,n=!1}return{r:a,g:i,b:r}}}if(s?.color&&!0===s.color.isColor){let{r:e,g:t,b:a}=s.color;return()=>({r:e,g:t,b:a})}return null}var j=32,I=16384,H=32*I,B=100;function F(e,t){if("torus"===e){let e=t()*Math.PI*2,s=t()*Math.PI*2,a=Math.cos(e),i=Math.sin(e),r=Math.cos(s),n=Math.sin(s);return{x:(1.4+.7*r)*a,y:-(1.4+.7*r)*i,z:.7*n,nx:r*a,ny:-r*i,nz:n,cr:1,cg:1,cb:1}}if("cylinder"===e){let e=t()*Math.PI*2,s=Math.cos(e),a=Math.sin(e);return{x:.8*s,y:1.6*(t()-.5),z:.8*a,nx:s,ny:0,nz:a,cr:1,cg:1,cb:1}}let s=t()*Math.PI*2,a=2*t()-1,i=Math.acos(a),r=Math.sin(i)*Math.cos(s),n=Math.cos(i),h=Math.sin(i)*Math.sin(s);return{x:r,y:n,z:h,nx:r,ny:n,nz:h,cr:1,cg:1,cb:1}}function W(e){let{geometry:t,matrix:s}=e,a=t.getAttribute("position");if(!a||a.count<3)return null;let i=t.getAttribute("normal"),r=t.getAttribute("uv"),h=t.getAttribute("color"),o=t.getIndex(),l=o?o.count/3:a.count/3;if(l<1)return null;let d=(e,t)=>o?o.getX(3*e+t):3*e+t,c=s?s.elements:null,u=s?(new n).getNormalMatrix(s).elements:null,g=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[0]*t+c[4]*s+c[8]*i+c[12]:t},p=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[1]*t+c[5]*s+c[9]*i+c[13]:s},b=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[2]*t+c[6]*s+c[10]*i+c[14]:i},S=new Float64Array(l),m=0;for(let e=0;e<l;e++){let t=d(e,0),s=d(e,1),a=d(e,2),i=g(t),r=p(t),n=b(t),h=g(s)-i,o=p(s)-r,l=b(s)-n,c=g(a)-i,u=p(a)-r,f=b(a)-n,M=o*f-l*u,y=l*c-h*f,R=h*u-o*c;m+=.5*Math.sqrt(M*M+y*y+R*R),S[e]=m}return m<=0?null:{total:m,sample:(t,s)=>{let a=0,n=l-1;for(;a<n;){let e=a+n>>1;S[e]<t?a=e+1:n=e}let o=a,c=d(o,0),m=d(o,1),f=d(o,2),M=s(),y=s();M+y>1&&(M=1-M,y=1-y);let R,w,x,v=1-M-y,A=g(c)*v+g(m)*M+g(f)*y,j=p(c)*v+p(m)*M+p(f)*y,I=b(c)*v+b(m)*M+b(f)*y;if(i){if(R=i.getX(c)*v+i.getX(m)*M+i.getX(f)*y,w=i.getY(c)*v+i.getY(m)*M+i.getY(f)*y,x=i.getZ(c)*v+i.getZ(m)*M+i.getZ(f)*y,u){let e=u[0]*R+u[3]*w+u[6]*x,t=u[1]*R+u[4]*w+u[7]*x,s=u[2]*R+u[5]*w+u[8]*x;R=e,w=t,x=s}}else{let e=g(c),t=p(c),s=b(c),a=g(m)-e,i=p(m)-t,r=b(m)-s,n=g(f)-e,h=p(f)-t,o=b(f)-s;R=i*o-r*h,w=r*n-a*o,x=a*h-i*n}let H=Math.sqrt(R*R+w*w+x*x)||1,B=1,F=1,W=1;if(h)B=h.getX(c)*v+h.getX(m)*M+h.getX(f)*y,F=h.getY(c)*v+h.getY(m)*M+h.getY(f)*y,W=h.getZ(c)*v+h.getZ(m)*M+h.getZ(f)*y;else if(e.sampleColor){let t=r?r.getX(c)*v+r.getX(m)*M+r.getX(f)*y:.5,s=r?r.getY(c)*v+r.getY(m)*M+r.getY(f)*y:.5,a=e.sampleColor(t,s);a&&(B=a.r,F=a.g,W=a.b)}return{x:A,y:j,z:I,nx:R/H,ny:w/H,nz:x/H,cr:B,cg:F,cb:W}}}}function k(e){let t=Math.min(Math.max(1,Math.floor(e.guideStrands)),I),s=function(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}(e.seed??1337),a="object"===e.shape&&e.sampler,i=a?e.samplerRadius??B:B,r=new Float32Array(4*H),n=new Float32Array(H),h=new Float32Array(4*I).fill(1);for(let o=0;o<t;o++){let t=a?e.sampler(s):F(e.shape,s),l=a?t.x:t.x*i,d=a?t.y:t.y*i,c=a?t.z:t.z*i,{nx:u,ny:g,nz:p}=t;h[4*o+0]=t.cr,h[4*o+1]=t.cg,h[4*o+2]=t.cb;let b,S,m,f=32*o,M=(1.8+.8*s())*e.hairLength*i/31,y=.5+1.5*s(),R=(.02+.06*s())*i;Math.abs(g)<.99?(b=-p,S=0,m=u):(b=1,S=0,m=0);let w=Math.sqrt(b*b+S*S+m*m)||1;for(let e=0;e<32;e++){let t=e/31,s=t*t*.4*i,a=R*Math.sin(t*y*Math.PI*2),h=4*(f+e);r[h+0]=l+u*M*e+a*b/w,r[h+1]=d+g*M*e-s+a*S/w,r[h+2]=c+p*M*e+a*m/w,r[h+3]=0===e?0:1,e<31&&(n[f+e]=M)}}return{initialPositions:r,restLengths:n,unitScale:i,rootColors:h}}var C=1/60,O=4,P=new o,L=new s,z=new a,q=new a,X=class extends e{constructor(e,i,r){super(e,i),this.type="HairSystem",this.isHairSystem=!0,this.simRunning=!1,this.previewRequested=!1,this.playModeActive=!1,this.pendingSimSeconds=0,this.simTime=0,this.resetRequested=!0,this.generation=0,this.settledSimSeconds=0,this.lastMotionFingerprint=0,this.lastBoneQuat=new s,this.lastBonePos=new a,this.hasLastBone=!1,this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,this.classicFallbackWarned=!1,this.regenSnapshot=null,this.context=r,this.data=i,this.geometry.setAttribute("position",new t(new Float32Array(0),3)),this.material=new u({colorWrite:!1,depthWrite:!1}),this.frustumCulled=!1,this.scalpMesh=new g(new d(B,48,32),new u({color:5448477})),this.scalpMesh.name="HairScalp",this.add(this.scalpMesh);let n=new h;n.setAttribute("position",new t(new Float32Array(12),3)),n.setIndex([0,2,1,2,3,1]),n.instanceCount=0,this.ribbonMesh=new g(n,new u({visible:!1})),this.ribbonMesh.name="HairRibbons",this.ribbonMesh.frustumCulled=!1,this.ribbonMesh.visible=!1,this.ribbonMesh.matrixAutoUpdate=!1,this.ribbonMesh.updateMatrixWorld=()=>{this.ribbonMesh.matrixWorld.identity()},this.ribbonMesh.updateWorldMatrix=()=>{this.ribbonMesh.matrixWorld.identity()},this.add(this.ribbonMesh),this.activeGuideStrands=i.guideStrands,this.roots=this.buildRoots(),this.regenSnapshot={guideStrands:i.guideStrands,hairLength:i.hairLength,spreadRadius:i.spreadRadius,headShape:i.headShape,baseObjectId:i.baseObjectId},this.applyScalpState(),this.applyShadowState(),this.syncSimRunning()}update(e){!this.simRunning||(this.pendingSimSeconds=Math.min(this.pendingSimSeconds+e/1e3,4*C*2),this.trackMotionRest(e/1e3))}trackMotionRest(e){this.boneTransform(L,z);let t=this.hasLastBone&&(Math.abs(this.lastBoneQuat.dot(L))<.9999995||this.lastBonePos.distanceToSquared(z)>1e-8),s=this.motionFingerprint(),a=!this.hasLastBone||t||this.resetRequested||s!==this.lastMotionFingerprint||this.data.windStrength>.001;this.lastBoneQuat.copy(L),this.lastBonePos.copy(z),this.lastMotionFingerprint=s,this.hasLastBone=!0,this.settledSimSeconds=a?0:this.settledSimSeconds+e}motionFingerprint(){let e=this.data;return e.gravity+2*e.damping+3*e.localStiffness+4*e.globalStiffness+5*e.globalRange+6*e.stiffnessFalloff+7*e.windStrength+8*e.vspCoefficient+9*e.kink+10*e.kinkFrequency+11*e.clumpStrength+12*e.clumpSize+13*e.clumpTipScale}get isSimulating(){return(this.simRunning||this.resetRequested)&&this.visible}get isMotionSettled(){return this.settledSimSeconds>6}get isVisiblyAnimating(){return this.isSimulating&&!this.isMotionSettled}startPreview(){this.previewRequested=!0,this.syncSimRunning()}stopPreview(){this.previewRequested=!1,this.syncSimRunning()}setPlayMode(e){this.playModeActive=e,e&&this.resetSimulation(),this.syncSimRunning()}resetSimulation(){this.resetRequested=!0,this.pendingSimSeconds=0,this.simTime=0,this.settledSimSeconds=0}warnClassicFallbackOnce(){this.classicFallbackWarned||(this.classicFallbackWarned=!0,console.warn("[spline] Hair System strands require the WebGPU renderer — the WebGL fallback shows only the scalp. Reload with ?renderer=webgpu in a WebGPU-capable browser."))}syncSimRunning(){this.simRunning=this.playModeActive||this.previewRequested||this.data.autoPlay}updateState(e,t){super.updateState(e,t),this.updateHairState(e)}updateHairState(e){if((void 0!==e.guideStrands||void 0!==e.hairLength||void 0!==e.spreadRadius||void 0!==e.headShape||void 0!==e.baseObjectId)&&this.regenerate(),(void 0!==e.headShape||void 0!==e.baseObjectId)&&this.applyScalpState(),void 0!==e.headColor){let t=this.scalpMesh.material;!0===t.isMeshBasicMaterial&&t.color.setRGB(e.headColor.r,e.headColor.g,e.headColor.b,r)}(void 0!==e.castShadow||void 0!==e.receiveShadow)&&this.applyShadowState(),void 0!==e.autoPlay&&this.syncSimRunning()}applyShadowState(){let e=this.data.castShadow??!0,t=this.data.receiveShadow??!0;this.castShadow=e,this.receiveShadow=t,this.scalpMesh.castShadow=e,this.scalpMesh.receiveShadow=t,this.ribbonMesh.castShadow=e,this.ribbonMesh.receiveShadow=t}regenerate(){this.activeGuideStrands=Math.max(1,Math.min(Math.floor(this.data.guideStrands),16384)),this.roots=this.buildRoots(),this.generation++,this.regenSnapshot={guideStrands:this.data.guideStrands,hairLength:this.data.hairLength,spreadRadius:this.data.spreadRadius,headShape:this.data.headShape,baseObjectId:this.data.baseObjectId},this.resetSimulation()}checkDataDrift(){let e=this.data,t=this.regenSnapshot;if(null===t||t.guideStrands!==e.guideStrands||t.hairLength!==e.hairLength||t.spreadRadius!==e.spreadRadius||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId){let s=null===t||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId;this.regenerate(),s&&this.applyScalpState()}this.syncSimRunning(),this.applyShadowState(),this.checkBaseDrift()}buildRoots(){let{headShape:e,baseObjectId:t,guideStrands:s,hairLength:a}=this.data;if(this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,"object"===e&&t){let e=this.context.scene.find(t);if(e){this.baseFoundAtRegen=!0,e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),i=t?function(e){let t=[];for(let s of e){let e=W(s);e&&t.push(e)}if(0===t.length)return null;let s=new Float64Array(t.length),a=0;for(let e=0;e<t.length;e++)a+=t[e].total,s[e]=a;return a<=0?null:e=>{let i=e()*a,r=0,n=t.length-1;for(;r<n;){let e=r+n>>1;s[e]<i?r=e+1:n=e}let h=0===r?i:i-s[r-1];return t[r].sample(h,e)}}(t.sources):null;if(this.baseSourceGeomsAtRegen=t?.sources.map(e=>e.geometry)??[],this.baseSourceHashesAtRegen=t?.hashes??[],this.baseColorHashAtRegen=t?.colorHash??0,t&&i){let r=this.baseWorldScale(e),n=Math.max(t.radius*r,.001);this.baseScaleAtRegen=r;let h=r;return k({shape:"object",guideStrands:s,hairLength:a,sampler:e=>{let t=i(e);return{...t,x:t.x*h,y:t.y*h,z:t.z*h}},samplerRadius:n})}}}return k({shape:"object"===e?"sphere":e,guideStrands:s,hairLength:a})}collectBaseSources(e){let t=[],s=[],a=0,i=0;P.copy(e.matrixWorld).invert();let r=P.clone(),n=h=>{if(!0===h.isHairSystem||h!==e&&!1===h.visible)return;let l=h.geometry;if(!0===h.isMesh&&l&&(l.getAttribute("position")?.count??0)>=3){let n=h===e?void 0:(new o).multiplyMatrices(r,h.matrixWorld),d=Array.isArray(h.material)?h.material[0]:h.material;t.push({geometry:l,matrix:n,sampleColor:A(d,this.context.shared)??void 0}),s.push(X.matrixHash(n)),i+=function(e,t){let s=e,a=0,i=1,r=e=>{a+=e*i,i+=1},n=s?.data?.layers;if(n&&"function"==typeof n.forEach){let e=t;n.forEach(t=>{let s=t.data;if(!1!==s.visible)if("color"===s.type){let t=s.color,a="string"==typeof t?"function"==typeof e?.color?e.color(t):void 0:t;a&&"number"==typeof a.r&&(r(a.r),r(a.g),r(a.b)),r(w(s.alpha,1))}else if("gradient"===s.type){let e=s;for(let t of e.colors??[])r(t[0]),r(t[1]),r(t[2]),r(t[3]);for(let t of e.steps??[])r(t);r(w(e.angle,0)),r(e.gradientType),r(e.smooth?1:0)}})}else s?.color&&!0===s.color.isColor&&(r(s.color.r),r(s.color.g),r(s.color.b));return a}(d,this.context.shared),null===l.boundingSphere&&l.computeBoundingSphere();let c=l.boundingSphere;if(c){let e=0,t=1;n?(z.copy(c.center).applyMatrix4(n),e=z.length(),t=X.matrixMaxScale(n)):e=c.center.length(),a=Math.max(a,e+c.radius*t)}}for(let e of h.children)n(e)};return n(e),0===t.length?null:{sources:t,hashes:s,radius:Math.max(a,.001),colorHash:i}}static matrixHash(e){if(!e)return 0;let t=e.elements,s=0;for(let e=0;e<16;e++)s+=t[e]*(e+1);return s}static matrixMaxScale(e){let t=e.elements,s=Math.hypot(t[0],t[1],t[2]),a=Math.hypot(t[4],t[5],t[6]),i=Math.hypot(t[8],t[9],t[10]);return Math.max(s,a,i,1e-6)}baseWorldScale(e){return P.copy(e.matrixWorld).decompose(z,L,q),Math.max(Math.abs(q.x),Math.abs(q.y),Math.abs(q.z),1e-6)}get widthWorldScale(){return"object"===this.data.headShape&&this.data.baseObjectId&&this.baseScaleAtRegen>0?this.baseScaleAtRegen:1}checkBaseDrift(){if("object"!==this.data.headShape||!this.data.baseObjectId)return;let e=this.context.scene.find(this.data.baseObjectId);if(!e)return;if(!this.baseFoundAtRegen)return void this.regenerate();e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),s=t?.sources??[],a=t?.hashes??[],i=this.baseSourceGeomsAtRegen,r=this.baseSourceHashesAtRegen,n=s.length!==i.length;if(!n)for(let e=0;e<s.length;e++)if(s[e].geometry!==i[e]||Math.abs(a[e]-r[e])>1e-4*Math.max(Math.abs(r[e]),1)){n=!0;break}if(!n&&"object"===this.data.hairColorSource&&(t?.colorHash??0)!==this.baseColorHashAtRegen&&(n=!0),!n&&s.length>0){let t=this.baseWorldScale(e);n=Math.abs(t-this.baseScaleAtRegen)>.001*Math.max(this.baseScaleAtRegen,1e-6)}n&&this.regenerate()}applyScalpState(){let e=this.data.headShape,t="object"===e&&null!==this.data.baseObjectId;this.scalpMesh.visible=!t,!t&&(this.scalpMesh.geometry.dispose(),this.scalpMesh.geometry="torus"===e?new c(140,70,24,48):"cylinder"===e?new i(80,80,160,48,1):new d(B,48,32))}boneTransform(e,t){let s=this.matrixWorld;if("object"===this.data.headShape&&this.data.baseObjectId){let e=this.context.scene.find(this.data.baseObjectId)?.matrixWorld;e&&(s=e)}P.copy(s).decompose(t,e,q)}raycast(e,t){if(!this.scalpMesh.visible)return;let s=[];this.scalpMesh.raycast(e,s);for(let e of s)e.object=this,t.push(e)}get shadowBoundsRadius(){let e="torus"===this.data.headShape?2.6:1.5;return this.roots.unitScale*(e+2.6*Math.max(this.data.hairLength,0))}getShadowBoundsCenter(e){return this.boneTransform(L,e),e}updateEntityBoxSize(e,t){let s=this.shadowBoundsRadius;e.set(0,0,0),t.set(s,s,s)}dispose(){super.dispose(),this.scalpMesh.geometry.dispose(),this.scalpMesh.material.dispose(),this.ribbonMesh.geometry.dispose(),this.ribbonMesh.material.dispose?.(),M()?.release(this)}};export{b as a,S as b,f as c,M as d,j as e,I as f,H as g,B as h,C as i,O as j,X as k};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,b as t}from"./runtime-chunk-
|
|
1
|
+
import{a as e,b as t}from"./runtime-chunk-LWTG4KKU.js";import{a,c as i,f as s,h as r}from"./runtime-chunk-NJWB6KRU.js";import{a as n}from"./runtime-chunk-TU4KDRKR.js";import{a as l,b as o}from"./runtime-chunk-TCS5UKOO.js";import{Y as h,d as u,e as c,i as d,ia as p}from"./runtime-chunk-ZOVWUNB5.js";import{b as y,h as f,j as g,v as m}from"./runtime-chunk-4Z7ZMHQK.js";import{c as b}from"./runtime-chunk-2PT2WH66.js";import{c as v,l as C}from"./runtime-chunk-TZCHGFVF.js";import{qa as S,ta as k,w as A,za as w}from"./runtime-chunk-NY4SLVL4.js";import{Pe as F,Qc as L,Vc as O,Wc as H,Xc as j,ed as U,ld as B,nd as T,xe as M}from"./runtime-chunk-KPOUV3HD.js";function D(e){return e instanceof p&&e.needsAO&&!b(e)&&!0!==e.isDecalObject}function z(e){let t=e.cloner;if(t&&Array.isArray(t.children))for(let a of t.children)a?.layers&&(a.layers.mask=e.layers.mask)}function P(e){return e.getLayersOfType("reflection").filter(e=>e.data.visible).length}function x(e){return e.getLayersOfType("reflection").some(e=>e.data.visible&&1===e.data.mirror)}function E(e){let t=1/0,a=-1/0;for(let i of e.getLayersOfType("reflection")){let e=i.data;if(!e.visible||1===e.mirror)continue;let s="number"==typeof e.blur?e.blur:null;t=Math.min(t,s??0),a=Math.max(a,s??10)}return t===1/0?null:{min:t,max:a}}function I(e){for(let t of e.getLayersOfType("reflection")){let e=t.data;if(!e.visible)continue;let{blur:a,thickness:i,steps:s,stepSize:r}=e;return"number"!=typeof a||"number"!=typeof i||"number"!=typeof s||"number"!=typeof r?"variable":{blur:a,thickness:i,steps:s,stepSize:r,tracingMode:1===e.tracingMode?1:0}}return null}function W(e,t){let a={outline:!1,cavity:!1},i=512&e.layers.mask,s=t.getLayersOfType("transmission"),r=t.getLayersOfType("outline"),n=P(t),h=t.getLayersOfType("cavity");return(r.length>0||h.length>0)&&(e.layers.set(8),s.length>0&&e.layers.enable(3),n>0&&e.layers.enable(4),a.outline=r.length>0,a.cavity=h.length>0,o(e),l(e)),0===s.length&&0===r.length&&0===h.length&&0===n&&e.layers.set(0),i&&e.layers.set(9),!i&&D(e)&&e.layers.enable(5),z(e),a}function K(e,t){if(!t.layers)return!1;let a=512&e.layers.mask,i=!1,s=t.getLayersOfType("transmission").filter(e=>e.data.visible),r=t.getLayersOfType("outline").filter(e=>e.data.visible),n=P(t),l=t.getLayersOfType("cavity").filter(e=>e.data.visible);return s.length>0&&(e.layers.set(3),(r.length>0||l.length>0)&&e.layers.enable(8),n>0&&e.layers.enable(4),i=!0),0===s.length&&0===r.length&&0===l.length&&0===n&&e.layers.set(0),a&&e.layers.set(9),!a&&D(e)&&e.layers.enable(5),z(e),i}function V(e,t){var a;if(!t.layers)return!1;let i=512&e.layers.mask,s=!1,r=P(t),n=t.getLayersOfType("transmission").filter(e=>e.data.visible),l=t.getLayersOfType("outline").filter(e=>e.data.visible),o=t.getLayersOfType("cavity").filter(e=>e.data.visible);return r>0&&((a=e.userData).__splinePlanarMirror??(a.__splinePlanarMirror=0),e.layers.set(4),n.length>0&&e.layers.enable(3),(l.length>0||o.length>0)&&e.layers.enable(8),s=!0),0===r&&0===n.length&&0===l.length&&0===o.length&&e.layers.set(0),i&&e.layers.set(9),!i&&D(e)&&e.layers.enable(5),z(e),s}function _(e){let t={outline:!1,cavity:!1},a=e=>{t.outline=t.outline||e.outline,t.cavity=t.cavity||e.cavity};return e.traverseEntity(e=>{if(e instanceof p)if(Array.isArray(e.material))for(let t=0;t<e.material.length;t++)a(W(e,e.material[t]));else a(W(e,e.material))}),t}function G(e){let t=!1;return e.traverseEntity(e=>{if(e instanceof p)if(Array.isArray(e.material))for(let a=0;a<e.material.length;a++)K(e,e.material[a])&&(t=!0);else K(e,e.material)&&(t=!0)}),t}function Q(e){let t=!1;return e.traverseEntity(e=>{if(e instanceof p)if(Array.isArray(e.material))for(let a=0;a<e.material.length;a++)V(e,e.material[a])&&(t=!0);else V(e,e.material)&&(t=!0)}),t}var R=new F,Z=new L,N=new B,Y=new U;function q(e,t,a,i=!1){let s=e.cloner;if(s){let r=null;if((e.raycast===T.prototype.raycast||e.raycast===m.prototype.raycast)&&!0!==e.isSkinnedMesh){let t=e.geometry;t&&(null===t.boundingSphere&&t.computeBoundingSphere(),r=t.boundingSphere)}for(let n of s.children){if(null!==r&&(Y.copy(r).applyMatrix4(n.matrixWorld),!t.ray.intersectsSphere(Y)))continue;let s=Z.copy(n.matrixWorld).invert(),l=N.copy(t.ray).applyMatrix4(s),o=e.matrixWorld;l.applyMatrix4(o);let h=R;h.set(l.origin,l.direction),h.near=t.near,h.far=t.far,h.layers.mask=t.layers.mask;let u=h.intersectObject(e,!1);u.length>0&&a.push({...u[0],object:i?n:e})}}}var J=class extends(g(j)){constructor(e,t,i){if(super(),this.data=t,this.bgColor=new d(1,1,1,1),this.fog=null,this.backupFog=new H(16777215,.1,2e3),this.fogUseBGColor=!1,this.fogMode="linear",this.fogDensity=S.getDensity({}),this.fogHeightFalloff=S.getHeightFalloff({}),this.fogHeightBase=S.getHeightBase({}),this.isActive=!1,this.skyState=null,this.skyStateVersion=0,this.gradingState=null,this.skyHdriHolder=null,this.aoColor=new O,this.penumbraSizeArrayCache=null,this.super_Entity(e,t),this.personalCamera=new a(A,{...w.defaultData,...t.camera,name:"Personal Camera"}),this.personalCamera.objectHelper.visible=!1,this.add(this.personalCamera),this.activeCamera=this.personalCamera,this.ambientLight=new M(13882323,8553090,.75*Math.PI),this.ambientLight.name="Default Ambient Light",this.ambientLight.layers.enable(3),this.ambientLight.removeFromParent(),this.add(this.ambientLight),t.uiScene){let a=C();null===a?v("ui-2d","a page's 2D scene"):this.uiScene=new a.Scene2D((Array.isArray(e)?e[0]:e)+"-ui",t.uiScene,{dpr:window.devicePixelRatio,shared:i.shared})}else t.uiFrame&&this.createUICanvas(t.uiFrame,i)}get scene(){return this.parent}get postprocessing(){return this.data.postprocessing}get frameId(){return this.data.uiFrame}get frame(){return this.uiCanvas?.frame}createUICanvas(e,t){let a=C();null!==a?(this.uiCanvas=new a.UICanvas(this.uuid+"-uiscreen",window.innerWidth,window.innerHeight,t),this.uiCanvas.isScreenSpace=!0,this.uiCanvas.promise.then(()=>{this.uiCanvas?.applyFrame(e),this.uiCanvas?.applySize()})):v("ui-2d","a page's UI canvas")}updateVisible(){}setBackgroundColor(e){this.bgColor=e,!0===this.fogUseBGColor&&(this.backupFog.color=e)}entityChildrenCount(){return this.uiScene?this.uiScene.children.length:super.entityChildrenCount()}updateAmbientLight(e,t){void 0!==e.color&&(this.ambientLight.color=n(e.color,t)),void 0!==e.intensity&&(this.ambientLight.intensity=e.intensity*Math.PI),void 0!==e.enabled&&(e.enabled?this.add(this.ambientLight):this.remove(this.ambientLight))}onDeactive(){this.isActive=!1}onActive(e){this.isActive=!0,e.fog=this.fog,this.traverseEntity(e=>{e instanceof i&&e.recomputeBoolean()}),this.updateShadow(this.data.shadow)}forceMaterialsUpdate(){this.traverseEntity(e=>{if(e instanceof p)if(Array.isArray(e.material))for(let t of e.material)t.needsUpdate=!0;else e.material.needsUpdate=!0,e.material.dispose()})}updateShadow(e){if(void 0===e.softShadowQuality&&void 0===e.type||!this.isActive)return;let t=this.data.shadow,a=k.isSoft(t);h(a,t?.softShadowQuality)&&this.forceMaterialsUpdate()}updateFog(e,t){e.enabled?this.fog=this.backupFog:this.fog=null,this.isActive&&(this.scene.fog=this.fog),this.fogUseBGColor=e.useBackgroundColor,e.useBackgroundColor?this.backupFog.color.set(this.bgColor):this.backupFog.color=n(e.color,t),this.backupFog.near=e.near,this.backupFog.far=e.far,this.fogMode=S.getMode(e),this.fogDensity=S.getDensity(e),this.fogHeightFalloff=S.getHeightFalloff(e),this.fogHeightBase=S.getHeightBase(e)}updateSky(e,t){this.skyState=e??null,this.skyStateVersion++;let a=e?.hdri?.image;this.skyHdriHolder=null!=a?t.image(a):null}updateAo(e,t){void 0!==e.aoColor&&(this.aoColor=n(e.aoColor,t))}updateByOp(e,t,a,i){let s=this.data.uiFrame;super.updateByOp(e,t,a,i);let r=t;y(e.path,["fog"])?this.updateFog(r.fog,a.shared):y(e.path,["sky"])?this.updateSky(r.sky,a.shared):y(e.path,["grading"])?this.gradingState=r.grading??null:y(e.path,["ao"])?this.updateAo(r.ao,a.shared):y(e.path,["ambient"])?this.updateAmbientLight(r.ambient,a.shared):y(e.path,["shadow"])?this.updateShadow(r.shadow):0===e.type&&0===e.path.length&&(void 0!==e.props.uiFrame||s!==r.uiFrame)&&this.updateUIFrame(e.props.uiFrame,a)}updateUIFrame(e,t){e?(this.uiCanvas||this.createUICanvas(e,t),this.uiCanvas.enabled=!0,this.uiCanvas.applyFrame(e)):this.uiCanvas&&(this.uiCanvas.enabled=!1)}updateState(e,t){this.updateState_Entity(e,t),void 0!==e.backgroundColor&&this.setBackgroundColor(n(e.backgroundColor,t.shared)),void 0!==e.fog&&this.updateFog(e.fog,t.shared),void 0!==e.sky&&this.updateSky(e.sky,t.shared),void 0!==e.grading&&(this.gradingState=e.grading),void 0!==e.ambient&&this.updateAmbientLight(e.ambient,t.shared),void 0!==e.ao&&this.updateAo(e.ao,t.shared),void 0!==e.shadow&&this.updateShadow(e.shadow)}createFrame(e,t){}raycast(e,t){super.raycast(e,t)}switchActiveCamera(e){e instanceof a&&e.isDescendantOf(this)&&(this.activeCamera!==this.personalCamera&&(this.activeCamera.objectHelper.visible=!0),this.activeCamera=e,e.objectHelper.visible=!1)}get playCamera(){let e=this.scene?.find(this.data.publish.playCamera);return e instanceof a?e:this.personalCamera}switchToPlayCamera(){this.switchActiveCamera(this.playCamera)}get penumbraSizeArray(){return null===this.penumbraSizeArrayCache&&this.updatePenumbraSizeArray(),this.penumbraSizeArrayCache}updatePenumbraSizeArray(){this.penumbraSizeArrayCache=new Array(u).fill(.5);let a=0,i=0;this.traverseEntity(s=>{if(!s.visible)return!0;s instanceof e&&s.visible&&a<c&&(this.penumbraSizeArrayCache[a]=s.data.penumbraSize??.5,a+=1),s instanceof t&&s.visible&&a<u-c&&(this.penumbraSizeArrayCache[c+i]=s.data.penumbraSize??.5,i+=1)})}raycastWithClones(e){let t=[],a=i=>{for(let n of i.children){let i=n.cloner;f.is(n)&&(n.visible||i?.object.data.visible)&&((s(n)||r(n)&&this.scene.enableHelpers&&n.objectHelper.visible)&&(e.intersectObject(n,!1,t),q(n,e,t,!0)),a(n))}};return a(this),t}updateEntity2DByOp(e,t,a,i){this.uiCanvas?.updateEntity2DByOp(e,t,a,i)}};export{x as a,E as b,I as c,_ as d,G as e,Q as f,q as g,J as h};
|
|
Binary file
|
|
Binary file
|